@charset "UTF-8";
/* font */
@import url("https://fonts.googleapis.com/css2?family=Kosugi+Maru&family=Zen+Maru+Gothic:wght@400;500;700&display=swap");
/* レイアウト */
.ContentOver-bg {
  position: relative;
  z-index: 0;
}
.ContentOver-bg:after {
  content: " ";
  height: calc(100% + 1rem);
  width: 100cqw;
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(255, 130, 130, 0.2941176471);
}

.keyVisual {
  aspect-ratio: 667/317;
}
.keyVisual img {
  width: 100%;
  max-width: 100%;
}

@media print, screen and (min-width: 769px) {
  #layout-header .site-logo {
    width: 31.75%;
  }
}
.sec-news {
  gap: 2em;
}
.sec-news.is-layout-grid {
  grid-template-columns: auto 1fr;
}
.sec-news .sec-title {
  grid-column: 1/2;
  grid-row: 1/2;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.sec-news .entrybox {
  grid-column: 2/3;
  grid-row: 1/3;
}
.sec-news .go-index {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: auto;
}
.sec-news .entry-excerpt {
  background-image: radial-gradient(circle, #ff0000 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 10px 4px;
  margin-top: 0.8em;
}
.sec-news .entry-excerpt a {
  display: flex;
  align-items: center;
  gap: 1em;
  text-decoration: none;
  color: #212529;
  padding-bottom: 0.5em;
}
.sec-news .entry-excerpt .day {
  margin: 0;
}

@media screen and (max-width: 768px) {
  .sec-news.is-layout-grid {
    display: block;
  }
  .sec-news .sec-title {
    width: 41.8571428571%;
    margin: auto;
  }
  .sec-news .entrybox {
    margin-block: 1.5em;
  }
  .sec-news .entrybox .entry-excerpt {
    padding-inline: 0.5em;
  }
  .sec-news .go-index {
    width: 57.1428571429%;
    margin: auto;
  }
}
.sec-point figure:where(:nth-of-type(2), :nth-of-type(3)) {
  border-image-source: linear-gradient(#fff3be, #fff3be);
  border-image-slice: fill 0;
  border-image-width: 1;
  border-image-outset: 0 100vw;
  border-image-repeat: stretch;
}
@media screen and (min-width: 2401px) {
  .sec-point figure:nth-of-type(2) {
    position: relative;
    margin-top: 100px;
  }
  .sec-point figure:nth-of-type(2)::before {
    position: absolute;
    content: "";
    background: url(../images/top/point‗bg_pc.png) no-repeat top center;
    height: 201px;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    z-index: -1;
    top: -200px;
    background-size: auto;
  }
  .sec-point figure:nth-of-type(3) {
    border-image-outset: 1em 100vw 2em 100vw;
    margin-bottom: 2em;
  }
}
@media print, screen and (min-width: 769px) and (max-width: 2400px) {
  .sec-point figure:nth-of-type(2) {
    position: relative;
    margin-top: 100px;
  }
  .sec-point figure:nth-of-type(2)::before {
    position: absolute;
    content: "";
    background: url(../images/top/point‗bg_pc.png) no-repeat top center;
    height: 201px;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    z-index: -1;
    top: -160px;
    background-size: 185% 100%;
  }
  .sec-point figure:nth-of-type(3) {
    border-image-outset: 0.5em 100vw 2em 100vw;
    margin-bottom: 2em;
  }
}
@media screen and (max-width: 768px) {
  .sec-point {
    gap: 0;
  }
  .sec-point figure:nth-of-type(1) img {
    aspect-ratio: 751/1506;
    margin-block: 1.5em;
  }
  .sec-point figure:nth-of-type(2) {
    position: relative;
  }
  .sec-point figure:nth-of-type(2)::before {
    position: absolute;
    content: "";
    background: url(../images/top/point‗bg_sp.png) no-repeat top center;
    background-size: cover;
    aspect-ratio: 754/73;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    top: -24%;
    z-index: -1;
  }
  .sec-point figure:nth-of-type(2) img {
    aspect-ratio: 701/256;
  }
  .sec-point figure:nth-of-type(3) {
    border-image-outset: 0 100vw 2em 100vw;
    margin-bottom: 2em;
  }
  .sec-point figure:nth-of-type(3) img {
    aspect-ratio: 698/1527;
  }
}

.sec-support {
  font-family: "Kosugi Maru", sans-serif;
}
.sec-support .project-title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #ed4830;
  font-size: clamp(22px, 2.5vw, 30px);
  margin-top: 0.3em;
}
@media print, screen and (min-width: 769px) {
  .sec-support {
    gap: 1.5em;
  }
  .sec-support .wp-block-column > .project-title:not(:first-child) {
    margin-top: 1.5em;
    position: relative;
  }
  .sec-support .wp-block-column > .project-title:not(:first-child):before {
    content: "";
    height: 1px;
    border-bottom: 4px dotted #212529;
    width: 100%;
    position: relative;
    top: -0.6em;
  }
}
@media screen and (max-width: 768px) {
  .sec-support .wp-block-columns {
    gap: 0;
  }
  .sec-support .project-title:not(:first-of-type) {
    margin-top: 1.5em;
    position: relative;
  }
  .sec-support .project-title:not(:first-of-type):before {
    content: "";
    height: 1px;
    border-bottom: 4px dotted #212529;
    width: 100%;
    position: relative;
    top: -0.6em;
  }
}

.sec-access iframe {
  aspect-ratio: 8/3;
  width: 100%;
}
.sec-access .case-title {
  background-color: #ccc;
  border-radius: 999px;
  padding-inline: 0.8em;
  padding-block: 0.2em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Kosugi Maru", sans-serif;
  margin: auto;
}
.sec-access .case-title:not(:first-child) {
  margin-top: 1em;
}
.sec-access .case-title.train {
  background-color: #ed9477;
}
.sec-access .case-title.car {
  background-color: #2aace2;
}
.sec-access dd {
  margin-top: 0.2em;
  margin-left: 0;
}
@media print, screen and (min-width: 769px) {
  .sec-access dd {
    text-align: center;
  }
}
.sec-access .accessinfo {
  border-image-source: linear-gradient(rgba(214, 184, 150, 0.3), rgba(214, 184, 150, 0.3));
  border-image-slice: fill 0;
  border-image-width: 1;
  border-image-outset: 0 100vw 1.2em 100vw;
  border-image-repeat: stretch;
  position: relative;
}
.sec-access .accessinfo:after {
  position: absolute;
  content: " ";
  background: url(../images/top/access-bg_pc.png) center center no-repeat;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 201px;
  z-index: -1;
  top: -201px;
}
@media screen and (max-width: 768px) {
  .sec-access .case-title {
    margin: auto;
  }
}