@charset "UTF-8";
/*見出し*/
.ttl-page {
  width: 100%;
  background: url("../img/img-town.svg") repeat-x center bottom/100% auto;
}
.ttl-page h2 {
  padding: 3em 0;
  color: var(--c-txt);
  text-align: center;
}
@media (max-width: 896px) {
  .ttl-page {
    background-size: 200% auto;
  }
}
@media (max-width: 480px) {
  .ttl-page {
    background-size: 300% auto;
  }
}

/*構成*/
.box-read {
  margin: 2.5em auto 0;
}

.box-contents .ttl {
  color: var(--c-primary);
}
.box-contents .ttl .pc {
  display: block;
}
@media (max-width: 896px) {
  .box-contents .ttl .pc {
    display: none;
  }
}
.box-contents .ttl_sub {
  position: relative;
  margin: 0.5em 0 0;
  padding: 0 0 0.25em 0;
  text-indent: 1.6rem;
  border-bottom: 2px solid var(--c-prim50);
}
.box-contents .ttl_sub::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 25%;
  height: 1px;
  border-bottom: 2px solid var(--c-primary);
}
.box-contents .box-img img {
  width: 100%;
  aspect-ratio: 5/3;
  -o-object-fit: cover;
     object-fit: cover;
}

.box-grid {
  display: grid;
  grid-template-rows: repeat(1, 1fr);
  grid-template-columns: repeat(2, 1fr);
  margin: 2em auto 0;
  gap: 2em;
}
.box-grid .img picture {
  aspect-ratio: 4/3;
}
.box-grid .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.5em;
}
@media (max-width: 896px) {
  .box-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}

.box-content_sub {
  margin: 2em auto 0;
}

.lst-job {
  padding: 1em 2.5em 2em;
  border-radius: 1em;
  border: 1px solid var(--c-primary);
  background: var(--c-white);
}
.lst-job ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(4, auto);
  grid-auto-flow: column;
}
.lst-job ul li {
  position: relative;
  margin: 1em 0 0;
  line-height: 1;
}
.lst-job ul li::before {
  content: "●";
  font-size: 1.4rem;
}
.lst-job ul li:last-child::after {
  content: "…など";
  position: absolute;
  top: 0.25em;
  left: 12em;
  display: inline-block;
}

/*サービス紹介ページ*/
@media (max-width: 896px) {
  #service .contents01 .box-grid .box-txt {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  #service .contents01 .box-grid .box-img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
  #service .contents01 .lst-job ul {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(5, auto);
  }
  #service .contents01 .lst-job ul li:last-child::after {
    left: 12em;
  }
}
@media (max-width: 480px) {
  #service .contents01 .lst-job ul {
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(10, auto);
  }
}
#service .contents02 .lst-job ul {
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, auto);
}
@media (max-width: 896px) {
  #service .contents02 .lst-job ul li:last-child::after {
    left: unset;
    right: 0;
  }
}
@media (max-width: 480px) {
  #service .contents02 .lst-job ul {
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(6, auto);
  }
}
#service .contents03 .lst-job ul {
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, auto);
}
@media (max-width: 896px) {
  #service .contents03 .lst-job ul li:last-child::after {
    left: unset;
    right: 0;
  }
}
@media (max-width: 480px) {
  #service .contents03 .lst-job ul {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, auto);
  }
}
@media (max-width: 896px) {
  #service .contents03 .box-grid .box-txt {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  #service .contents03 .box-grid .box-img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}

/*共有テーブル*/
.box-table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.box-table .inq::after {
  content: "必須";
  display: inline-block;
  font-size: 1.2rem;
  border-radius: 24px;
  margin-left: 1em;
  padding: 0.4em 0.5em;
  background-color: var(--c-note);
}
.box-table dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 2em;
  width: 24%;
  background-color: var(--c-prim50);
  border-bottom: 1px solid var(--c-primary);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 480px) {
  .box-table dt {
    padding: 2em 0.5em;
  }
}
.box-table dd {
  margin: 0;
  padding: 2em;
  width: 76%;
  border-bottom: 1px solid var(--c-primary);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 480px) {
  .box-table dd {
    padding: 2em 0.5em;
  }
}
.box-table ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 0.5em;
}
.box-table li {
  list-style: disc;
  list-style-position: inside;
  text-indent: -2rem;
  padding-left: 2rem;
}
.box-table input[type=radio] {
  width: 1.5em;
  height: 1.5em;
}
@media (max-width: 896px) {
  .box-table dt {
    width: 100%;
  }
  .box-table dd {
    width: 100%;
  }
}
@media (max-width: 480px) {
  .box-table dt {
    padding: 1.5em;
  }
}

.company .box-lnk {
  text-align: center;
}
.company .box-philosophy {
  padding: 2em;
  background: var(--c-white);
  border: 1px solid var(--c-primary);
}
.company .box-philosophy li {
  list-style: circle;
  list-style-position: inside;
  text-indent: -2rem;
  padding-left: 2rem;
}
.company .box-philosophy li:first-child.txt {
  margin: 0;
}
.company .lnk-inner {
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: min(680px, 100%);
}
.company .lnk-inner li {
  width: 22.2222222222%;
  background: var(--c-white);
  border: 1px solid var(--c-primary);
  border-radius: 1em;
  -webkit-transition: 0.5s ease all;
  -o-transition: 0.5s ease all;
  transition: 0.5s ease all;
}
.company .lnk-inner li:hover {
  background: var(--c-primary);
}
.company .lnk-inner li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1em;
  text-decoration: none;
  text-align: center;
}
.company .lnk-inner li a::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  background: var(--c-primary);
  -webkit-mask-image: url("../img/ico-_circle_right.svg");
          mask-image: url("../img/ico-_circle_right.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}
.company .lnk-inner li a:hover::after {
  background: var(--c-prim50);
}
.company .lst-pdf li::after {
  content: "PDF";
  background-color: rgb(180, 6, 6);
  color: var(--c-white);
  margin-left: 0.5em;
  padding: 0.15em 0.5em;
  font-size: 1.2rem;
  font-weight: 800;
}
.company .lst-pdf li a:hover {
  color: var(--c-primary);
}
@media (max-width: 896px) {
  .company .lnk-inner li {
    margin-top: 0.25em;
    width: 49.3827160494%;
  }
}

.box-movie {
  text-align: center;
}
.box-movie iframe {
  margin: 1em auto 0;
  width: min(800px, 90%);
  aspect-ratio: 5/3;
  border: 0;
}

.box-accsess iframe {
  margin: 1.5em auto 0;
  width: 100%;
  aspect-ratio: 2/1;
}
.box-accsess .access_info {
  margin: 2em auto 0;
}
.box-accsess .access_info dt {
  padding: 0 2em;
}
.box-accsess .access_info dd {
  padding: 0 0 1em 3em;
  border-bottom: 1px solid var(--c-primary);
}

.mailform.box-read {
  text-align: center;
}
.mailform .box-info {
  border: 1px solid var(--c-primary);
  background: var(--c-white);
  padding: 1em;
  text-align: center;
}
.mailform .box-info .num {
  font-size: 4rem;
  font-weight: 800;
}
.mailform .box-info .num span {
  font-size: 2.4rem;
}
@media (max-width: 480px) {
  .mailform .box-info .num {
    font-size: 3.5rem;
  }
}
.mailform input, .mailform textarea {
  padding: 1em;
  width: 80%;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
}
@media (max-width: 480px) {
  .mailform input, .mailform textarea {
    width: 100%;
  }
}

.box-send {
  margin: 1.5em auto 0;
  text-align: center;
}
.box-send a {
  text-decoration: none;
}
.box-send .btn {
  margin: 1em auto 0;
}

/*メール確認*/
.box-confirm .note {
  color: var(--c-note);
}
.box-confirm .box-send .btn.cancel {
  background: var(--c-2ndary);
}

.sp {
  display: none;
}
@media (max-width: 480px) {
  .sp {
    display: block;
  }
}

.pc {
  display: block;
}
@media (max-width: 896px) {
  .pc {
    display: none;
  }
}/*# sourceMappingURL=contents.css.map */