@charset "UTF-8";

.sub {
  line-height: 1.6;
}

.sub .contents-wrapper {
  margin-bottom: 8%;
}

.sub h2 {
  font-size: 3.5rem;
}

.text p {
  margin-bottom: 0;
}

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

main.sub {
  padding-top: 10%;
}

.sub h2::after {
  left: -3vw;
}

.sub h2 {
  padding-left: 2vw;
}
}

.common-list {
  display: flex;
  flex-wrap: wrap;
}

.common-list > * {
  width: calc(100% / 3 - 2px);
  display: flex;
  flex-direction: column;
}

.s-text {
  font-size: .85em;
}

.icon {
  text-align: center;
  border-radius: 9999px;
  font-weigh: normal;
  font-size: .8rem;
  display: block;
  white-space: nowrap;
  width: fit-content;
  padding: .5em 2em;
  color: #fff;
}

.icon.icon-border {
  padding: 2px;
}

.icon.icon-border > * {
  display: inline-block;
  background: #fff;
  padding: .5em 2em;
  border-radius: 9999px;
  width: fit-content;
  color: #000;
}

.lead-img {
  position: relative;
  display: block;
}

.lead-img .lead-copy, .lead-img .lead-head {
  position: absolute;
  color: #fff;
  font-weight: 600;
}

.lead-img .lead-copy p.bg-gradation01 { 
  padding: .5em;
  width: max-content;
  border-radius: 0 .8em .8em 0;
}

.lead-img .lead-copy p {
  margin-bottom: 1em;
}


.sub > .content-wrapper {
  margin-bottom: 5%;
}

#sub-about .inner > .inner {
  padding-left: 10%;
}

@media only screen and (max-width: 767px) {
  #sub-about .inner > .inner {
    padding-left: 5vw;
  }
}

#sub-about #mv.lead-img .lead-head {
  font-size: 4rem;
  color: #fff;
  top: 1em;
  left: 5vw;
  letter-spacing: .1em;
  animation-delay: .3s;
}

#sub-about #mv.lead-img .lead-copy {
  font-size: 1.25rem;
  bottom: 1.5rem;
  left: 0;
}

#sub-about #mv.lead-img .lead-copy p.bg-gradation01 {
  padding-left: 5vw;
}

#sub-about #mv.lead-img .lead-copy p.bg-gradation01:first-of-type {
  animation-delay: .6s;

}
#sub-about #mv.lead-img .lead-copy p.bg-gradation01:last-of-type {
  animation-delay: .9s;
}

@media only screen and (max-width: 767px) {
  #sub-about #mv.lead-img .lead-head {
    font-size: 7vw;
    left: 3vw;
  }
  #sub-about #mv.lead-img .lead-copy p.bg-gradation01 { 
    padding-left: 3vw;
    font-size: 2.5vw;
  }
}

#sub-about .about-top-list .lead-head {
  font-size: 3.6rem;
  bottom: 8%;
  left: 3%;
  font-weight: 600;
  letter-spacing: .05em;
  text-shadow: 4px 4px 15px rgba(0, 0, 0, 0.4);
}

#sub-about .about-top-list .lead-copy {
  font-size: 1.7rem;
  top: 10%;
  left: 0;
  z-index: 3;
}

#sub-about .about-top-list .lead-copy p {
  padding-left: 8%;
  border-radius: 0 .5em .5em 0;
}

#sub-about .about-top-list a {
  cursor: pointer;
}

#sub-about .about-top-list a:hover  {
  opacity: 1;
}

#sub-about .about-top-list a .lead-head {
  transition: background-position .2s;
  background: linear-gradient(45deg, #000000 50%, #ffffff 50%) 100%;
  color: #fff;
  text-shadow: 4px 4px 15px rgba(0,0,0, 0.4);
  background-size: 220% 100%;
  background-clip: text;
  z-index: 3;
}

@media (hover: hover) {
  #sub-about .about-top-list a:hover .lead-head {
    background-position: 0 100%;
    color: transparent;
  }
}

@media only screen and (max-width: 767px) {
  #sub-about .about-top-list .lead-head {
    font-size: 2rem;
    bottom: 15%;
  }
  #sub-about .about-top-list .lead-copy {
    font-size: .92rem;
  }
}

#sub-about .about-top-list .icon {
  position: absolute;
  left: 3%;
  bottom: 5%;
}

#sub-about .about-personal {
  display: flex;
  flex-direction: column;
  border-radius: 1rem;
  padding: 10px;
  margin-bottom: 6%;
}

@media only screen and (min-width: 768px) {
  #sub-about .about-personal {
    position: sticky;
    top:15%;
    left:0;
  }
}

#sub-about .about-personal h3,
#sub-about .about-overview h3 {
  color: #29ABE2;
  line-height: 1.2;
}

#sub-about .about-personal h3 .icon {
  margin-bottom: 1.5em;
  letter-spacing: .05em;
}

#sub-about .about-personal h3 span:not(.icon),
#sub-about .about-overview h3 span {
  color: #000;
  font-size: .8em;
}

#sub-about .about-detail-flex {
  align-items: flex-start;
}

#sub-about .about-personal {
    display: grid;
    grid-template-rows: auto auto auto auto auto;
    grid-template-columns: auto;
    grid-template-areas: 'image'
                        'lead'
                        'text'
                        'title'
                        'list'; 
}

@media only screen and (max-width: 767px) {
  #sub-about .about-personal {
     grid-template-areas: 'lead'
                        'text'
                        'title'
                        'list'
                        'image';
    margin-bottom: 10%;
  }
  #sub-about .about-personal > *:not(figure, .about-personal-list) {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  #sub-about .about-personal-list {
    margin-left: 10%;
  }
}

#sub-about .about-personal figure {
  grid-area: image;
}

#sub-about .about-personal h3 {
  grid-area: title;
  margin-top: 1em;
}

#sub-about .about-personal .lead-copy {
  grid-area: lead;
}

#sub-about .about-personal .text {
  grid-area: text;
}

#sub-about .about-personal-list {
  width: 20em;
  display: flex;
  flex-wrap: wrap;
  gap: 6%;
  margin-bottom: 2em;
  grid-area: list;
}

#sub-about .about-personal-list dt {
  font-weight: normal;
  width: 6em;
  text-align: justify;
  text-justify: inter-ideograph;
  text-align-last: justify;
  white-space: nowrap;
  position: relative;
}
#sub-about .about-personal-list dt::after {
  content: '：';
  display: block;
  position: absolute;
  right: -1.2em;
  top: 0;
}
#sub-about .about-personal-list dd {
  width: 10em;
}

#sub-about .about-personal p.lead-copy {
  font-size: 1.75rem;
  font-weight: 600;
  margin: .5em 0;
}

#sub-about .about-personal-lead {
  padding: 3rem 0 .5em 0;
}

#sub-about .about-overview h3 {
  display: flex;
  place-items: center;
}

#sub-about .about-overview h3 span {
  font-size: .5em;
  font-weight: normal;
}

#sub-about .about-overview .about-interview-detail > * {
  position: relative;
  margin-bottom: 2em;
  width: 80%;
}

#sub-about .about-overview .about-interview-detail > *::before {
  content: '';
  display: block;
  position: absolute;
  width: 18%;
  height: auto;
  aspect-ratio: 1 / 1;
  max-width: 80px;
  max-height: 80px;
  top: -.5em;  
  padding-bottom: .5em;
}

#sub-about .about-overview .about-interview-detail dt::before {
  left: 0;
  background: url(../img/about/icon-interview-simna.svg) top left / contain no-repeat;
}

#sub-about .about-overview .about-interview-detail dd::before {
  right: 0;
}

#sub-about .about-overview #about-interview01.about-interview-detail dd::before {
  background: url(../img/about/icon-interview01.webp) top left / contain no-repeat;
}
#sub-about .about-overview #about-interview02.about-interview-detail dd::before {
  background: url(../img/about/icon-interview02.webp) top left / contain no-repeat;
}
#sub-about .about-overview #about-interview03.about-interview-detail dd::before {
  background: url(../img/about/icon-interview03.webp) top left / contain no-repeat;
}
#sub-about .about-overview #about-interview04.about-interview-detail dd::before {
  background: url(../img/about/icon-interview04.webp) top left / contain no-repeat;
}

#sub-about .about-overview .about-interview-detail > dt {
  padding-left: min(90px, 20%);
}

#sub-about .about-overview .about-interview-detail > dd {
  padding-right: min(90px, 20%);
  margin-left: auto;
  margin-right: 0;
}

#sub-about .about-overview .about-interview-detail > dd:last-of-type {
  margin-bottom: 0;
}

#sub-about .about-overview .about-interview-detail > * img {
  max-width: 80px;
  margin-bottom: 20px;
}

.section-content {
  padding: 5%;
  margin-bottom: 10%;
  background: #fff;
  border-radius: 1rem;
}

#sub-about .about-overview .about-interview-detail > * .text {
  display: flex;
  align-items: center;
  color: #fff;
  line-height: 1.4;
  padding: 1em 1em .5em 1em;
  margin-bottom: .5em;
}

#sub-about .about-overview .about-interview-detail > dt .text {
  background: #B4B4B4;
  border-radius: 0 1em 1em 1em;
}

#sub-about .about-overview .about-interview-detail > dd .text {
  background: #29ABE2;
  border-radius: 1em 0 1em 1em;
}

#sub-about .about-overview .about-interview-detail > * .text p {
  margin-bottom: .5em;
}

.about-detail {
  background: #EFEFEF;
  padding: 5% 0 10% 0;
}

.sub.about-detail > .content-wrapper {
  margin-bottom: 0;
}

#sub-about .flex-child-s {
  width: 36.5%;
}

#sub-about .flex-child-l {
  width: 60.5%;
}

#sub-about .about-schedule {
  position: relative;
  overflow: hidden;
  padding-bottom: 5%;
}

#sub-about .about-schedule figure {
  width: 38%;
  position: absolute;
  top: 0;
  right: 5%;
}

@media only screen and (max-width: 640px) {
  #sub-about .about-schedule figure {
    width: 35%;
  }
}

#sub-about .about-schedule figure img:nth-of-type(1) {
  margin-top: 2em;
}

#sub-about .about-schedule figure img:nth-of-type(2) {
  margin: 4.5em 0;
}

#sub-about .about-schedule-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: 5%;
  width: 20em;
  position: relative;
}

#sub-about .about-schedule-list::before,
#sub-about .about-schedule-list dt::after {
  content: '';
  display: block;
  position: absolute;
}

#sub-about .about-schedule-list::before {
  top: -7%;
  width: .4em;
  height: 107%;
  left: -1.8em;
  border-left: .22em solid #5ED5FF;
  border-right: .22em solid #FF9FCA;
}

#sub-about .about-schedule .ex-time {
  margin-top: 2em;
}

#sub-about .about-schedule-list > *:not(:last-of-type) {
  margin-bottom: 2em;
}
#sub-about .about-schedule-list > * {
  font-size: 1.1em;
}

#sub-about .about-schedule-list dt {
  width: 5em;
  position: relative;
}

#sub-about .about-schedule-list dd {
  width: 12em;
}

@media only screen and (max-width: 1240px) {
  #sub-about #about-schedule04 dd:nth-of-type(1), #sub-about #about-schedule04 dd:nth-of-type(2) {
    padding-right: 15%;
  }
}

#sub-about .about-schedule-list dt::after {
  top: 50%;
  translate: 0 -50%;
  left: -2em;
  width: 1.2em;
  height: 1.2em;
  background: url(../img/about/about-schedule-point.svg) center center / cover no-repeat;
  z-index: 1;
}

#sub-about .about-schedule-list dt:last-of-type::after {
  width: 1.6em;
  height: 1.6em;
  top: 52%;
  left: -2.2em;
  background: url(../img/about/about-schedule-point2.svg) center center / cover no-repeat;
}

#sub-about .about-work .about-work-list {
  display: grid;
  grid-template-columns: auto auto;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 2%;
  margin-bottom: 10%;
  font-size: .9rem;
}

#sub-about .about-work .about-work-list li {
  display: flex;
  flex-direction: column;
  border-radius: 1rem;
  background: #fff;
  padding: 1em;
  margin-bottom: 0;
}

#sub-about .about-work .about-work-list li figure {
  order: 1;
}

#sub-about .about-work .about-work-list li h4 {
  order: 2;
  color: #29ABE2;
  font-size: 1.2rem;
  margin: .3em 0;
  letter-spacing: unset;
}
#sub-about .about-work .about-work-list li .text {
    order: 3;
}

#sub-about .about-message {
  font-size: .9rem;
}

#sub-about #about-detail-link .about-top-list {
  display: flex;
  justify-content: space-between;
  gap: 2%;
}

#sub-about #about-detail-link .about-top-list .icon {
  top: 5%;
  bottom: auto;
  font-size: .6em;
}

#sub-about #about-detail-link .about-top-list .lead-head {
  bottom: .2em;
  font-size: 1.5em;
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  #sub-about #about-detail-link li {
    margin-bottom: 0;
  }
}

.sub.sub-bg {
  margin-top: -250px;
  padding-top: 250px;
}
@media only screen and (max-width: 767px) {
  .sub.sub-bg {
    margin-top: 0;
    padding-top: 10%;
  }
}

#sub-work h3 {
  font-weight: 400;
}

#sub-work #mv {
  margin-top: 10%;
}

#sub-work #mv, #sub-work .inner {
  position: relative;
}

#sub-work #mv.bg-circle-s::before {
  top: -70%;
  right: -50%;
  width: 100%;
  opacity: .8;
}

#sub-work .inner.bg-circle-s::before {
  top: 10%;
  left: -50%;
  width: 80%;  
  opacity: .7;
}

#sub-work #mv .lead-head {
  font-size: 2.4rem;
  letter-spacing: .3em;
  text-align: center;
  margin-bottom: .8em;
  font-weight: 200;
  line-height: 1.5;
}

#sub-work #mv .text .lead-head {
  font-size: 2rem;
  letter-spacing: inherit;
  font-weight: 600;
}

#sub-work #mv .text {
  line-height: 2;
  font-size: 1.1rem;
  margin: 7% 0;
}

@media only screen and (max-width: 767px) {
  #sub-work #mv > .lead-head {
    text-align: left;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }
  #sub-work #mv .text {
    font-size: 2.04vw;
    line-height: 2.7;
  }
  #sub-work #mv.bg-circle-s::before {
  top: -30%;
  right: -40%;
  width: 120%;
  opacity: .8;
}
  #sub-work .inner.bg-circle-s::before {
    top: 40%;
  }
}


#sub-work #sub-work-numbers {
  padding: 10% 5%;
  background: #FFCEE4;
  border-radius: 50px;
  position: relative;
  z-index: 1;
}

#sub-work #work-numbers h3 {
  font-size: 1.7rem;
}

#sub-work .list-gradation > * {
  padding: 2px;
}

#sub-work .flex.work-numbers-list {
  gap: 1rem;  
}

@media only screen and (max-width: 767px) {
  #sub-work .flex.work-numbers-list {
    gap: 2vw;
  }
}

#sub-work .flex.work-numbers-list li {
  width: 49%;
  border-radius: 50px;
  container-type: inline-size;
}

#sub-work .flex.work-numbers-list .number {
  letter-spacing: unset;
}

.img {
  margin-bottom: 0;
}

.number {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  margin-bottom: 0;
  line-height: .9;
}

#sub-work .flex.work-numbers-list li > * {
  border-radius: 50px;
  padding: 7%;
}


@media only screen and (max-width: 767px) {
  #sub-work #sub-work-numbers {
    border-radius: 7vw;
  }
  #sub-work .flex.work-numbers-list li, 
  #sub-work .flex.work-numbers-list li > * {
    border-radius: 7vw;
  }
}


#sub-work .flex.work-numbers-list li p.number {
  margin-bottom: 0;
}

#sub-work .flex.work-numbers-list li.job *:not(.img) {
  position: relative;
  z-index: 4; 
}

#sub-work .flex.work-numbers-list li.job .img {
  margin-top: -5em;
  position: relative;
  z-index: 0;
}

#sub-work .flex.work-numbers-list li h4 {
  font-size: 1.8rem;
  font-weight: 400;
  margin-bottom: .3em;
  letter-spacing: .15em;
}

#sub-work .work-numbers-list li:not(.ratio) .number-count {
  white-space: nowrap;
  text-align: right;
  width: 100%;
  display: inline-block;
  margin-bottom: -.04em;
  letter-spacing: -.02em;
}

#sub-work .work-numbers-list li .number-unit {
  color: #31aeef;
  letter-spacing: unset;
}

#sub-work .flex.work-numbers-list li.average .number {
　font-size: 5rem;
  font-size: 20cqw;
}

#sub-work .flex.work-numbers-list .average .number-count {
  font-size: 20rem;
  font-size: 56cqw;
  min-width: 1.2em;
}

#sub-work .flex.work-numbers-list .bg-gradation01 {
   background-image: linear-gradient(to right, #f67eb2 0%, #8a6fca 40%, #31aeef 80%);
}

#sub-work .flex.work-numbers-list .ratio .ratio-number {
  display: grid;
  width: fit-content;
}

#sub-work .flex.work-numbers-list .ratio .ratio-number figure {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: 4%;
  margin-left: -4%;
}

#sub-work .flex.work-numbers-list .ratio .ratio-number figure > * {
  padding: 0 16%;
}

#sub-work .flex.work-numbers-list .ratio .ratio-number .number {
  display: grid;
  grid-template-columns: 40% 1fr 40%;
  margin: 0 auto;
  place-items: center;
}

#sub-work .flex.work-numbers-list .ratio .ratio-number .number > span:not(:nth-of-type(2)) {
  font-size: 5rem;
  font-size: 42cqw;
}

#sub-work .flex.work-numbers-list .ratio .ratio-number .number > span:nth-of-type(2) {
  font-size: 30cqw;
  margin: 0 -2rem;
}

#sub-work .flex.work-numbers-list .ratio .bg-gradation01.number {
   background-image: linear-gradient(to left, #f67eb2 0%, #8a6fca 60%, #31aeef);
}

#sub-work .flex.work-numbers-list li.holidays {
  position: relative;
}

#sub-work .flex.work-numbers-list li.holidays::before {
  content: '';
  display: block;
  position: absolute;
  width: 22%;
  height: 50%;
  top: 7%;
  right: 5%;
  background: url(../img/work/work-holidays.png) left top / contain no-repeat;
  z-index: 2;
}

#sub-work .flex.work-numbers-list li.holidays .number {
　font-size: 4rem;
  font-size: 20cqw;
}

#sub-work .flex.work-numbers-list .holidays .number-count {
  font-size: 20rem;
  font-size: 42cqw;
  margin-bottom: -.04em;
  min-width: 1.6em;
  display: inline-block;
}

#sub-work .flex.work-numbers-list .area .number {
  display: grid;
  grid-template-columns: 45% 25% 25%;
  gap: 5%;
}

@media only screen and (max-width: 767px) {
  #sub-work .flex.work-numbers-list .area .number {
    grid-template-columns: repeat(2, auto);
    grid-template-rows: repeat(2, auto);
  }
    #sub-work .flex.work-numbers-list .area .number > *:nth-of-type(1) {
      grid-area: 1 / 1 / 2 / 3;
    }
    #sub-work .flex.work-numbers-list .area .number > *:nth-of-type(2) {
      grid-area: 2 / 1 / 3 / 2;
    }
    #sub-work .flex.work-numbers-list .area .number > *:nth-of-type(3) {
       grid-area: 2 / 2 / 3 / 3; 
    }
}

#sub-work .flex.work-numbers-list .area .number-content {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  font-size: 1.2rem;
  font-size: 10cqw;
}

#sub-work .flex.work-numbers-list .area .number-content > div {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  gap: .1em;
  width: 100%;
}

#sub-work .flex.work-numbers-list .area .text.flex {
  justify-content: flex-start;
  align-items: center;
  gap: 2em;
  margin-bottom: 2em;
}

@media only screen and (max-width: 767px) {
  #sub-work .flex.work-numbers-list .area .text.flex {
    gap: 2vw;
  }
}

#sub-work .flex.work-numbers-list .area .text.flex > * {
  margin-bottom: 0;
}

#sub-work .flex.work-numbers-list .area .number-content h5 {
  font-size: 1.2rem;
  font-size: 2cqw;
  font-weight: 400;
  margin: 1em 0 0 0;
  white-space: nowrap;
  letter-spacing: .2rem;
  display: grid;
  grid-template-rows: 2rem 1fr;
  width: 2.5rem;
  margin-left: -.5em;
}
#sub-work .flex.work-numbers-list .area .number-content h5::after {
  content: '';
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1.6;
  background: url(../img/work/work-area.jpg) center bottom / 100% no-repeat;
  position: relative;
  left: -.1rem;
  z-index: 4;
}

#sub-work .flex.work-numbers-list .area .number-content:first-of-type h5 {
  font-size: 1.4rem;
  font-size: 3.2cqw;
}

#sub-work .flex.work-numbers-list .area .number-count {
  margin-bottom: -.05em;
}

#sub-work .flex.work-numbers-list .area .number-unit {
  margin-bottom: 0;
  margin-top: auto;
}

#sub-work .flex.work-numbers-list .area .number-count[data-count="95"] {
  font-size: 3rem;
  font-size: 20cqw;
  min-width: 1.2em;
}
#sub-work .flex.work-numbers-list .area .number-count[data-count="3"],
#sub-work .flex.work-numbers-list .area .number-count[data-count="2"] {
  font-size: 2rem;
  font-size: 15cqw;
  min-width: .7em;
}

@media only screen and (max-width: 767px) {
    #sub-work .flex.work-numbers-list .area .number-content {
    font-size: 15cqw;
    justify-content: flex-start;
    gap: 2vw;
    }
    #sub-work .flex.work-numbers-list .area .number-count[data-count="95"] {
    font-size: 45cqw;
    letter-spacing: -.05em;
    padding-right: .05em;
    }
    #sub-work .flex.work-numbers-list .area .number-count[data-count="95"] + .number-unit {font-size: 20cqw;}
    #sub-work .flex.work-numbers-list .area .number-count[data-count="3"],
    #sub-work .flex.work-numbers-list .area .number-count[data-count="2"] {
    font-size: 28cqw;
    }
    #sub-work .flex.work-numbers-list .area .number-content h5 {
    font-size: 5cqw;
    }
    #sub-work .flex.work-numbers-list .area .number-content:first-of-type h5 {
    font-size: 7cqw;
    }
    
    #sub-work .flex.work-numbers-list .area .number-content h5::after {
    aspect-ratio: 1 / 1.3;
    }
}

#sub-work .flex.work-numbers-list .paid .icon {
  border: 2px solid #000;
  color: #000;
  font-size: 1rem;
  font-weight: normal;
  padding: .3em .6em;
  letter-spacing: .1em;
  margin-right: .5em;
  width: 10em;
}

#sub-work .flex.work-numbers-list .paid .number-content,
#sub-work .flex.work-numbers-list .paid .number,
#sub-work .flex.work-numbers-list .paid .number .number-unit {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

#sub-work .flex.work-numbers-list .paid .number:first-of-type {
  margin-bottom: 10%;
}

#sub-work .flex.work-numbers-list .paid .number-content {
  font-size: 7rem;
  font-size: 11cqw;
  align-items: center;
}

#sub-work .flex.work-numbers-list .paid .number-content .number-count {
  font-size: 3rem;
  font-size: 42cqw;
  min-width: 1.3em;
}

#sub-work .flex.work-numbers-list .paid .number-content .number-count[data-count="10"] {
  min-width: 1em;
}

#sub-work .flex.work-numbers-list .paid .number span span {
  font-size: .5em;
}

#sub-work .flex.work-numbers-list .overtime .number {
  font-size: 1rem;
  font-size: 11cqw;
  justify-content: center;
}

#sub-work .flex.work-numbers-list .overtime .number-count {
  font-size: 3rem;
  font-size: 59cqw;
  min-width: 1.2em;
  text-align: center;
  letter-spacing: -.08em;
  text-align: center;
}

#sub-work .flex.work-numbers-list .overtime .number-unit {
  white-space: nowrap;
  line-height: 1.2;
}

#sub-work .flex.work-numbers-list .overtime .number-unit span {
  color: #999;
}

#sub-work #sub-work-skillup {
  position: relative;
}

#sub-work #sub-work-skillup.bg-circle-s::before {
  top: -80%;
  right: -20%;
  width: 80%;
  z-index: -2;
  opacity: .7;
}

#sub-work #sub-work-support.bg-circle-s::before {
  bottom: -40%;
  left: -20%;
  width: 50%;
  opacity: .7;
}

#sub-work #sub-work-skillup .common-list > * {
  width: calc(50% - 2px);
}

#sub-work .common-list dt {
  padding-bottom: 1em;
  color: #FE77B3;
  font-size: 1.2rem;
  height: fit-content;
}

#sub-work #sub-work-support .common-list dt {
  color: #29ABE2;
}

#sub-work #sub-work-support .common-list dt span {
  font-size: .8em;
  color: #999;
}

#sub-work .swiper-btn, #sub-about .swiper-btn {
  display: none;
}

@media only screen and (max-width: 767px) {
  #sub-work #sub-work-skillup.bg-circle-s::before {
    top: -40%;
    right: -40%;
    opacity: 1;
    width: 90%;
  }
  #sub-work .common-list, #sub-about .swiper-wrapper {
    width: fit-content;
    flex-wrap: nowrap;
    margin-top: 2px;
  }
  #sub-work .swiper, #sub-about .swiper {
    overflow: hidden;
    width: 95vw;
    margin-right: -5vw;
  }
  #sub-work .common-list > div, #sub-about .swiper-wrapper > * {
    width: 70vw!important;
    flex-shrink: 0;
  }
  #sub-work .swiper .btn, #sub-about .swiper .btn {
    text-indent: -10000px;
    width: 6em;
    border: 1px solid #000;
    padding: 0 1em;
    text-align: center;
    font-size: 1rem;
    display: inline-block;
    padding: .5em;
  }
  #sub-work .swiper .btn::after, #sub-about .swiper .btn::after {
    background-position: center center;
    transition: none;
  }
  @media (hover: hover) {
    #sub-work .swiper-btn > .btn:hover::after, #sub-about .swiper-btn > .btn:hover::after {
      right: 2em;
    }
  }
  #sub-work .swiper-btn > .btn:first-of-type.arrow::after,
  #sub-about .swiper-btn > .btn:first-of-type.arrow::after {
    rotate: 180deg;
  }
  #sub-work .swiper-btn, #sub-about .swiper-btn {
    display: flex;
    justify-content: flex-end;
    gap: 5vw;
    width: 80vw;
    margin-top: 1em;
    z-index: 8;
  }
}

#sub-work .workplace-image > * {
  position: absolute;
}

#sub-work .workplace-image > *:nth-of-type(1) {
  width: 26%;
  top: 2%;
  left: 0;
  max-width: 650px;
}

#sub-work .workplace-image > *:nth-of-type(2) {
  width: 35%;
  top: 10%;
  left: 31%;
  max-width: 850px;
}

#sub-work .workplace-image > *:nth-of-type(3) {
  width: 30%;
  top: 0;
  right: -5%;
  max-width: 1000px;
}

#sub-work .workplace-image > *:nth-of-type(4) {
  width: 19%;
  top: 65%;
  left: 13%;
  max-width: 500px;
}

#sub-work .workplace-image > *:nth-of-type(5) {
  width: 45%;
  top: 0%;
  right: -15%;
  padding-top: calc(30% * .7);
  max-width: 1100px;
}

#sub-work .workplace-image > *:nth-of-type(2) {
  animation-delay: .7s;
}
#sub-work .workplace-image > *:nth-of-type(3) {
  animation-delay: .4s;
}
#sub-work .workplace-image > *:nth-of-type(4) {
  animation-delay: .3s;
}
#sub-work .workplace-image > *:nth-of-type(5) {
  animation-delay: .6s;
}
#sub-work #sub-work-support {
  animation-delay: .8s;
}

@media only screen and (max-width: 767px) {
  #sub-work .workplace-image {
    margin-bottom: 10%;
    max-height: 53vw;
    height: 53vw;
  }
  #sub-work .workplace-image > *:nth-of-type(1) {
    width: 40.5vw;
    top: auto;
    bottom: 0;
    left: 2vw;
 }
  #sub-work .workplace-image > *:nth-of-type(2) {
    width: 48vw;
    top: 0;
    left: -5vw;
  }
  #sub-work .workplace-image > *:nth-of-type(3) {
    width: 25vw;
    top: 0;
    right: -3vw;
  }
  #sub-work .workplace-image > *:nth-of-type(4) {
    width: 30vw;
    top: 0;
    left: 46vw;
  }
  #sub-work .workplace-image > *:nth-of-type(5) {
    width: 60vw;
    top: auto;
    bottom: 0;
    right: auto;
    left: 46vw;
    padding-top: 0;
  }
}

#sub-work .workplace-image {
  position: relative;
  height: 40vw;
  max-height: 1000px;
}

@media only screen and (max-width: 767px) {
  #sub-work .workplace-image {
    max-height: inherit;
    height: auto;
    aspect-ratio: 75 / 40;
  }
}

#sub-what {
  letter-spacing: .15em;
}

#sub-what .flex .flex-child-s {
  width: 37%;
}

#sub-what .flex .flex-child-l {
  width: 58.5%;
}

#sub-what > .inner > section:nth-of-type(2n) .flex {
  flex-direction: row-reverse;
}

@media only screen and (max-width: 767px) {
  #sub-what .flex {
    flex-direction: column-reverse!important;
    width: 90%;
  }
  #sub-what > .inner > section:nth-of-type(2n+1) .flex {
    margin-left: auto;
    margin-right: 0;
  }
}

#sub-what h3 {
  font-weight: 500;
  font-size: 1.25rem;
  margin-bottom: 1.6em;
}

#sub-what h3.border-gradation > * {
  padding: 1.2em 1.5em;
}

#sub-what #sub-what-assistance {
  margin-top: 7%;
}

#sub-what .lead-copy {
  font-size: 1.75rem;
  font-weight: 500;
  margin-bottom: 1em;
}

#sub-what .assistance_company-logo {
  display: grid;
  grid-template-columns: 18% 25% 25%;
  gap: 5% 10%;
  width: 80%;
  margin: 10% auto;
  justify-content: space-between;
  align-items: center;
}

@media only screen and (max-width: 767px) {
  #sub-what .assistance_company-logo {
    width: 100%;
  }
}

#sub-know {
  letter-spacing: .15em;
}

#sub-know .content-wrapper {
  margin-bottom: 7%;
}

#sub-know #mv {
  width: 100vw;
  height: auto;
  aspect-ratio: 4 / 3;
  background: url(../img/know/know-mv.webp) 20% 50% / cover no-repeat;
  margin: 5% 0;
  padding: 8% 2% 0 2%;
  color: #fff;
  border-radius: 0 0 50px 50px;
}

@media only screen and (max-width: 767px) {
    #sub-know #mv {
    padding: 8% 5% 0 5%;
    aspect-ratio: 1 / 1.7;
    background-position: 10% 0;
    border-radius: 0 0 5vw 5vw;
  }
}

#sub-know  #mv .lead-head {
  font-size: 3rem;
  letter-spacing: .4em;
  font-weight: 200;
  margin-bottom: 1.5em;
  animation-delay: .4s;
}

@media only screen and (max-width: 767px) {
  #sub-know #mv .lead-head {
    letter-spacing: inherit;
    font-size: 6vw;
    font-feature-settings: 'palt';
  }
}

#sub-know #mv .text {
  line-height: 2;
  font-size: 1.1rem;
  animation-delay: .6s;
}

@media only screen and (max-width: 767px) {
  #sub-know #mv .text {
    font-size: 2.5vw;
    line-height: 2.5;
  }
}

#sub-know section .inner {
  max-width: 980px;
  font-size: 1.1rem;
  line-height: 1.8;
}

#sub-know h3 {
  font-weight: 600;
  font-size: 1.3rem;
  line-height: 1.6;
  margin-bottom: 2em;
}

#sub-know h3 span {
  font-size: 2.8rem;
}

#sub-know .inner.know-mv-list-wrap {
  max-width: 1200px;
}

#sub-know .know-mvv-list {  
  text-align: center;
}

#sub-know .know-mvv-list > * {
  width: calc(100% / 3);
}

#sub-know .know-mvv-list > *:nth-of-type(2) {
  animation-delay: .2s;
}

#sub-know .know-mvv-list > *:nth-of-type(3) {
  animation-delay: .4s;
}

@media only screen and (max-width: 767px) {
  #sub-know .know-mvv-list {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  #sub-know .border-gradation {
    gap: 0;
  }
}

#sub-know .border-gradation > div > dt {
  height: 40%;
  font-size: 2.3rem;
  font-weight: 500;
  padding: 1em 0 2em 0;
  position: relative;
}

#sub-know .border-gradation > div > dt::after {
  content: '';
  display: block;
  position: absolute;
  bottom: .5em;
  left: 50%;
  translate: -50% 0;
  width: 1.5em;
  height: 2px;
  background-image: linear-gradient(70deg, #ff9fca 0%, #a1abff 20%, #5ed5ff);
}

#sub-know .border-gradation > div > dd {
  height: 60%;
  font-weight: 600;
  line-height: 2.7;
  padding: 2em 0;
  letter-spacing: .08em;
}

#sub-know .pics-slide ul {
  display: flex;
  width: 200vw;
  height: auto;
  aspect-ratio: 20 / 3;
  animation: slide-horizonal2 15s linear infinite both;
  gap: .5%;
}

@media only screen and (max-width: 767px) {
  #sub-know .pics-slide {
    padding-top: 3%;
  }
  #sub-know .pics-slide ul {
     width: 400%;
     animation: slide-horizonal2 15s linear infinite both;
  }
  #sub-know .pics-slide ul li.pics {
    gap: 4%;
  }
}

@keyframes slide-horizonal2 {
  0% { translate: 0 0; }
  100% { translate: -50.2% 0; }
}

#sub-know .workspace-image img {
  height: 100%;
  width: auto;
}

#sub-know .workspace-image .pics img {
  height: 50%;
}

#sub-know .workspace-image .pics {
  display: flex;
  flex-direction: column;
  gap: 4%;
}

#sub-know #sub-know-company {
  background: #e5f5fb;
  padding-top: 8%;
  border-radius: 50px 50px 0 0;
}

@media only screen and (max-width: 767px) {
  #sub-know #sub-know-company {
    border-radius: 5vw 5vw 0 0;
  }
}

#sub-know .company-map iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 720 / 263;
}

@media only screen and (max-width: 767px) {
  #sub-know .company-map iframe {
    aspect-ratio: 4 / 3;
    border-radius: 5vw 5vw 0 0;
  }
}

#sub-know #sub-know-company h3 {
  font-weight: 400;
}

#sub-know #sub-know-company h3 span {
  font-size: 3.5rem;
}

#sub-know #sub-know-company h3::after {
  content: '会社概要';
  font-size: .7em;
  display: block;
}

#sub-know dl.list-border {
  justify-content: space-between;
  margin: 5% 0;
}

#sub-know dl.list-border dt {
  width: 6em;
  font-weight: 500;
  text-align: justify;
  text-justify: inter-ideograph;
  text-align-last: justify;
  white-space: nowrap;
}

#sub-know dl.list-border dd {
  width: calc(100% - 6em);
  padding-left: 18%;
}

.sub-entry + footer #footer-lead,
.sub-entry + footer .footer-entry {
  display: none;
}

.sub-entry section.bg-circle-s::before {
  top: -45%;
  right: -60%;
  width: 120%;
}

@media only screen and (max-width: 767px) {
  .sub-entry section.bg-circle-s::before {
    top: -20%;
    right: -50%;
  }
}

.sub-entry > .inner.bg-circle-s::before {
  bottom: -25%;
  left: -40%;
  width: 70%;
  right: auto;
}

@media only screen and (max-width: 767px) {
  .sub-entry > .inner.bg-circle-s::before {
    content: none;
  }
}

.sub-entry .border-gradation {
  font-size: 1rem;
}

.sub-entry h3 {
  font-weight: 400;
  font-size: 1.4rem;
  text-align: center;
}

.sub-entry p {
  margin-bottom: 1em;
}

.sub-entry li {
  margin-bottom: 0;
}

.sub-entry h4 {
  margin-top: 3em;
  margin-bottom: .5em;
  font-size: 1.15rem;
}

main.sub-entry, main.sub-casual, #sub-work {
  padding-bottom: 5%;
}

.sub-entry .content-wrapper {
  margin: 10% 0 7% 0;
}

.sub-entry .content-wrapper > div {
  padding: 5%;
}

.sub-entry dl.list-border dt,
.sub-entry dl.list-border dd {
  padding: .5em;
  border-color: #B2B2B2;
}

.sub-entry dl.list-border dt:first-of-type,
.sub-entry dl.list-border dd:first-of-type {
  border: none;
}

.sub-entry dl.list-border dt {
  width: 10em;
}

.sub-entry dl.list-border dd {
  width: calc(100% - 10em);
}

.entry-btn {
  color: #fff;
  padding: .5em 2em;
  border-radius: .3em;
  display: block;
  margin: 7% auto 0 auto;
  width: fit-content;
}

#sub-entry-form h3 {
  margin-bottom: 7%;
}

.form-item {
  width: calc(100% - 3em);
  display: flex;
  margin-bottom: 2em;
  padding-bottom: 3em;
  margin-left: 3em;
  position: relative;
}

.form-item p {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .form-item {
    flex-wrap: wrap;
    padding-right: 5%;
    margin-left: 0;
    width: 100%;
  }
}

.wpcf7-spinner { display:none!important;width: 0; height: 0;}

.form-item .wpcf7-not-valid-tip {
  position: absolute;
  bottom: -1.8em;
  left: 0;
  
}

.form-item .wpcf7-form-control > * {
  display: inline-block;
  white-space: nowrap;
  padding: .5em 0;
}

.form-item::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: linear-gradient(70deg, #ff9fca 0%, #a1abff 20%, #5ed5ff);
}

.form-item.last::after {
  background: none;
}

.form-item .label {
  width: 10em;
  font-size: .95rem;
  font-weight: 600;
  background-image: linear-gradient(70deg, #ff9fca 0%, #a1abff 20%, #5ed5ff);
   background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

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

  .form-item .label {
    padding-left: 3em;
    font-size: 1.1rem;
    width: 100%;
    margin-bottom: .5em;
  }
}

@media only screen and (min-width: 768px) {
  .form-item > *not(.label) {
    width: calc(100% - 9em);
  }
}

.form-item fieldset {
  display: contents;
}

.form-item span {
  display: inline-block;
}

.form-item fieldset legend {
  padding: .5em 0;
  margin-bottom: 0;
  margin-left: 0;
  white-space: nowrap;
  width: 10em;
}

.form-item fieldset legend .required.bg-gradation01 {
  top: .7em;
}

.form-item .required.bg-gradation01 {
  position: absolute;
  top: .2em;
  left: -5em;
  padding: .1em .7em;
  color: #fff;
  font-size: .75em;
  border-radius: .3em;
}

@media only screen and (max-width: 767px) {
  .form-item .required.bg-gradation01 {
    left: 0;
  }
}

input[type=checkbox] {
  width: 1.5em;
  height: 1.5em;
}

input[type=checkbox],
label .wpcf7-form-control-wrap {
  background: linear-gradient(50deg, #31d5de, #7777fe);
  border-radius: .4em;
  position: relative;
  margin-right: 1em;
}

.form-item-control {
  display: block;
  width: calc(90% - 10em);
}

.form-item .form-item-control > .wpcf7-form-control-wrap input:not([type="checkbox"]) {
  display: block;
  width: 100%;
}

.form-item span[data-name="your-message"] textarea {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .form-item-control, .form-item span[data-name="your-message"] {
    margin-left: 3.5em;
    width: calc(95% - 3.5em);
  }
}

.wpcf7-textarea, .wpcf7-text {
  padding: 1em;
}

.wpcf7-form-control::placeholder {
  font-size: .7em;
  color: #999;
}

input[type=checkbox]::before,
label .wpcf7-form-control-wrap::before {
  content: '';
  display: block;
  position: absolute;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  background: #fff;
  top: 1px;
  border-radius: .3em;
  left: 1px;
}

input[type=checkbox]::after {
    border-right: 2px solid #58A1F0;
    border-bottom: 2px solid #58A1F0;
    content: '';
    display: block;
    width: .5em;
    height: .8em;
    left: .5em;
    margin-top: -.5em;
    opacity: 0;
    position: absolute;
    top: 50%;
    rotate: 45deg;
}

input[type=checkbox]:checked::after {
    opacity: 1;
}

input[type=submit], .wpcf7-form button {
  color: #fff;
  font-weight: 600;
  font-size: 1.2rem;
  padding: .3em 1em;
  border-radius: .5em;
  width: 30%;
  display: block;
  text-align: center;
  cursor: pointer;
  transition: opacity .3s;
  min-width: fit-content;
}

input[type=submit]:hover {
  opacity: .8;
}

.wpcf7-list-item {
  margin-left: 0;
  margin-right: 1.6em;
}

.wpcf7-response-output {
  display: none;
}

span[data-name="your-message"] + span.note {
  margin-top: auto;
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  span[data-name="your-message"] + span.note {
    margin-left: 4.5em;
  }
}

.form-item.submit-area:not(.entry-form) {
  justify-content: flex-start;
  align-items:flex-end;
  gap: 3em;
  flex-wrap: wrap;
}

.form-item.submit-area:not(.entry-form) > input:not(#confirm-btn) {
  margin-left: 10%;
}

.form-item.submit-area {
  margin-top: 3em;
  padding-bottom: 0;
}

.form-item.submit-area::after {
  content: none;
}

.form-item.submit-area.entry-form #confirm-btn {
  margin: 0 auto;
}
.form-item #back-btn {
  border: 1px solid #666;
  border-radius: .3em;
  padding: .3em 1em;
  color: #666;
}

#sub-news-detail h2 {
  margin-bottom: 1.5em;
}

@media only screen and (max-width: 767px) {
  #sub-news-detail h2 {
    margin-bottom: 1em;
  }
}

#sub-news-detail .border-gradation {
  padding: 2px;
}

#sub-news-detail .border-gradation > * {
  padding: 8%;
}
#sub-news-detail .border-gradation > * p:last-of-type {
  margin-bottom: 0;
}

#sub-news-detail .sub-news-date {
  margin-bottom: 1em;
  font-size: 1.22rem;
}

.sub-news h3, .sub-news h4, #sub-casual h3 {
  font-weight: 500;
  font-size: 1.28rem;
  margin-bottom: 2em;
}

.sub-news h3.title {
  padding-bottom: 2.2em;
  position: relative;
  margin-bottom: 2.5em;
}

.sub-news h3.title::after {
  content: '';
  display: inline-block;
  width: 100%;
  height: 2px;
  background-image: linear-gradient(70deg, #ff9fca 0%, #a1abff 50%, #5ed5ff);
  position: absolute;
  left: 0;
  bottom: 0;  
}

.sub-news h3.title br {
  display: none;
}

#sub-news-detail .pager-link-area {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

#sub-news-detail .pager-link-area .back-btn {
  width: 20%;
  min-width: 12em;
  white-space: nowrap;
  padding-top: .8em;
  padding-bottom: .8em;
}

#sub-news-detail .pager-link-area .single-pager {
  margin-left: 20%;
  margin-right: 0;
}

#sub-job-detail .border-gradation > * {
  padding: 4% 8%;
}

.sub-job h3.title {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 auto 2em auto;
}

.sub-job dd ul {
 list-style-type: disc;
 margin-left: 1em;
}

.sub-job dd li {
  margin-bottom: 0;
}

.sub-job .sub-job-detail-list > * {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.sub-job .sub-job-detail-list > *:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 2px;
  background-image: linear-gradient(70deg, #a1abff 50%, #5ed5ff);
}

.sub-job .sub-job-detail-list dt {
  width: 30%;
  padding: 2em 0;
}

.sub-job .sub-job-detail-list dd {
  width: 70%;
  padding: 2em 0;
}

.sub-job .pager {
  margin-left: auto;
  margin-right: auto;
}

#sub-casual .lead-copy {
  font-size: 1.77rem;
}

#sub-casual p, #sub-casual li {
  font-size: 1.12rem;
  letter-spacing: .04em;
}

#sub-casual p {
  margin-bottom: 1.5rem;
}

#sub-casual .flex {
  flex-direction: row-reverse;
}

@media only screen and (max-width: 767px) {
  #sub-casual .flex {
    flex-direction: column-reverse;
  }
}

#sub-casual .flex.sub-casual-lead .flex-child-l {
  width: 54.9%;
}

#sub-casual .flex.sub-casual-lead .flex-child-s {
  width: 42%;
}

#sub-casual .list-gradation li {
  background-image: linear-gradient(70deg, #31D5DE 0%, #7777FE);
  border-radius: .4em;
}

.sub-casual-reason-list {
  margin-bottom: 2rem;
}

#sub-casual .list-gradation li > * {
  padding: .7em 1.5em;
  border-radius: .4em;
}

#sub-casual .flex.sub-casual-lead .sub-casual-pics {
  display: grid;
  grid-template-areas: 'img1 img1''img2 img3';
                        grid-template-rows: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 2%;
}

@media only screen and (max-width: 767px) {
  #sub-casual .flex.sub-casual-lead .sub-casual-pics {
    display: block;
    margin-top: 5%; 
  }
}

#sub-casual .flex.sub-casual-lead .sub-casual-pics figure:nth-of-type(1) {
  grid-area: img1;
}

#sub-casual .flex.sub-casual-lead .sub-casual-pics figure:nth-of-type(2) {
  grid-area: img2;
  animation-delay: .3s;
}

#sub-casual .flex.sub-casual-lead .sub-casual-pics figure:nth-of-type(3) {
  grid-area: img3;
  animation-delay: .5s;
}

@media only screen and (max-width: 767px) {
  #sub-casual .flex.sub-casual-lead .sub-casual-pics figure:not(:nth-of-type(1)) {
    display: none;
  }
}

#sub-casual h3 {
  margin-bottom: 1.5em;
  margin-top: -.3em;
}

@media only screen and (max-width: 767px) {
  main#sub-casual {
    padding-bottom: 15%;
  }
}

.sub-casual-step-list + .lead-copy {
  width: fit-content;
  margin: 2.5em auto!important;
}

.btn-outline {
  font-size: 1.39rem;
  text-align: center;
  width: 70%;
  margin: 7% auto 0 auto;
  padding: .7em .5em;
  overflow: hidden;
  transition: color .3s;
}

.btn-outline:hover {
  opacity: 1;
  color: #fff;
  border: none;
  width: calc(70% + 2px);
  padding-top: calc(.7em + 1px);
  padding-bottom: calc(.7em + 1px);
}

.btn-outline::after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(70deg, #ff9fca 0%, #a1abff 50%, #5ed5ff);
  top: 0;
  right: 100%;
  z-index: -1;
  transition: right .3s;
}

@media (hover: hover) {
  .btn-outline:hover::after {
    right: 0;
  }
}

.sub-casual-step-list li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 3.5em;
  position: relative;
}

.sub-casual-step-list li .step {
  width: 10em;
  white-space: nowrap;
  padding: .4em;
  color: #fff;
  font-weight: 600;
  text-align: center;
  border-radius: 9999px;
  margin-right: 7%;
}

.sub-casual-step-list li:not(:last-of-type)::before {
  content: '';
  display: block;
  position: absolute;
  left: 5em;
  top: calc(50% + 2.5em);
  translate: -50% 0;
  width: 2em;
  height: 2em;
  background: url(../img/casual/downarrow.svg) top left / contain no-repeat;
}

.sub-casual-step-list li .text {
  width: calc(93% - 10em);
}

.sub-casual-step-list li .text-steps {
  padding-bottom: 1.5em;
  margin-bottom: 1.5em;
  border-bottom: 1px solid #000;
  display: inline-block;
}

main.sub-policy {
  padding-bottom: 5%;
  line-height: 1.7;
  font-weight: 500;
}


@media only screen and (max-width: 767px) {
  main.sub-policy {
    padding-bottom: 15%;
  }
}

.sub-policy .inner {
  max-width: 1200px;
  letter-spacing: .09em;
}

.sub-policy h3 {
  font-size: 1.39rem;
  margin-top: 2em;
}

.sub-policy p, .sub-policy li {
  margin-bottom: 0;
  font-size: 1.11rem;
}

.sub-policy .signature-text {
  margin-top: 2em;
}

.sub-policy li {
  list-style-type: disc;
  margin-left: 1.5em;
}

.sub-policy + footer #footer-lead,
.sub-policy + footer .footer-entry {
  display: none;
}

@media only screen and (max-width: 767px) {
  .sub-policy + footer {
    display: none;
  } 
}

