.l-header {
  --color: #fff;
}

@media only screen and (max-width: 768px) {
  .l-main {
    padding: 0 2.2727272727vw 11.3636363636vw;
  }
}
@media print, screen and (min-width: 769px) {
  .l-main {
    padding-bottom: 40px;
  }
}

.p-bg {
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
}
.p-bg iframe {
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  width: 100%;
}

.p-mv {
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 768px) {
  .p-mv {
    margin-bottom: 68.1818181818vw;
    padding-top: 77.7272727273vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv {
    margin-bottom: 138px;
    padding-top: 313px;
  }
}

.p-mv-text img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-mv-text img {
    width: 93.4090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-mv-text img {
    width: 718px;
  }
}

@media only screen and (max-width: 768px) {
  .p-emergency {
    border: 0.6818181818vw solid var(--orange);
    margin-bottom: 5.9090909091vw;
    padding: 3.4090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-emergency {
    border: 3px solid var(--orange);
    margin-bottom: 100px;
    padding: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .p-emergency .p-news-list {
    overflow-y: scroll;
    height: 20.6818181818vw;
  }
}
@media only screen and (max-width: 768px) {
  .p-emergency .p-news-date {
    width: 23.8636363636vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-emergency .p-news-date {
    width: 105px;
  }
}

.p-emergency-title {
  background: url("../img/icon-info.svg") no-repeat left center/32px auto;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .p-emergency-title {
    background-size: 7.2727272727vw auto;
    font-size: 4.0909090909vw;
    margin-bottom: 1.8181818182vw;
    padding-left: 9.0909090909vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-emergency-title {
    font-size: 1.8rem;
    margin-bottom: 14px;
    padding-left: 46px;
  }
}

.p-news-list li {
  display: flex;
}
@media only screen and (max-width: 768px) {
  .p-news-list li {
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news-list li {
    align-items: center;
  }
}
@media only screen and (max-width: 768px) {
  .p-news-list li:not(:first-child) {
    margin-top: 2.2727272727vw;
  }
}

.p-news-date {
  font-family: var(--ff-din);
  flex-shrink: 0;
}
@media only screen and (max-width: 768px) {
  .p-news-date {
    font-size: 3.4090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news-date {
    font-size: 1.5rem;
  }
}

.p-news-category {
  align-items: center;
  display: flex;
  flex-shrink: 0;
}
@media only screen and (max-width: 768px) {
  .p-news-category {
    gap: 2.2727272727vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news-category {
    gap: 10px;
    width: 170px;
  }
}
.p-news-category p {
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-news-category p {
    font-size: 2.2727272727vw;
    padding-left: 2.2727272727vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news-category p {
    font-size: 1rem;
    padding-left: 10px;
  }
}
.p-news-category p::before {
  content: "";
  display: block;
  left: 0;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
}
@media only screen and (max-width: 768px) {
  .p-news-category p::before {
    height: 0.9090909091vw;
    width: 0.9090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news-category p::before {
    height: 4px;
    width: 4px;
  }
}
.p-news-category p.-cat01::before {
  background: #e50012;
}
.p-news-category p.-cat02::before {
  background: var(--lightblue);
  border-radius: 100%;
}

.p-news-subject {
  font-feature-settings: "palt";
  letter-spacing: 0.04em;
}
@media only screen and (max-width: 768px) {
  .p-news-subject {
    font-size: 3.4090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news-subject {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 768px) {
  .p-info {
    margin-bottom: 6.8181818182vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-info {
    margin-bottom: 86px;
  }
}
.p-info .c-sec-title {
  background-image: url("../img/txt-info.svg");
}
@media only screen and (max-width: 768px) {
  .p-info .c-sec-title {
    margin-bottom: 5.9090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-info .c-sec-title {
    margin-bottom: 26px;
  }
}
.p-info .c-sec-title img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-info .c-sec-title img {
    width: 20.4545454545vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-info .c-sec-title img {
    width: 132px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-info .p-news-list {
    margin-bottom: 35px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-info .p-news-list li:not(:last-child) {
    margin-bottom: 14px;
  }
}
@media only screen and (max-width: 768px) {
  .p-info .p-news-date {
    width: 19.5454545455vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-info .p-news-date {
    font-size: 1.6rem;
    width: 86px;
  }
}

@media only screen and (max-width: 768px) {
  .p-concept {
    margin-bottom: 6.8181818182vw;
    padding: 8.1818181818vw 0;
  }
}
@media print, screen and (min-width: 769px) {
  .p-concept {
    margin-bottom: 80px;
    padding: 52px 0 72px;
  }
}

@media only screen and (max-width: 768px) {
  .p-concept-title {
    background: url("../img/txt-concept.svg") no-repeat center 2.7272727273vw/71.3636363636vw auto;
    margin-bottom: 4.5454545455vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-concept-title {
    background: url("../img/txt-concept.svg") no-repeat center 30px/523px auto;
    margin-bottom: 30px;
  }
}

.p-concept-title-en {
  text-align: center;
}
.p-concept-title-en img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-concept-title-en img {
    width: 10.9090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-concept-title-en img {
    width: 110px;
  }
}

.p-concept-title-ja {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-concept-title-ja {
    font-size: 8.1818181818vw;
    line-height: 1.277;
  }
}
@media print, screen and (min-width: 769px) {
  .p-concept-title-ja {
    font-size: 8.2rem;
    line-height: 1.292;
  }
}

.p-concept-text {
  font-family: "Noto Serif JP", serif;
  line-height: 2;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .p-concept-text {
    font-size: 4.0909090909vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-concept-text {
    font-size: 2rem;
  }
}

.p-banners {
  display: flex;
}
@media only screen and (max-width: 768px) {
  .p-banners {
    flex-direction: column;
    gap: 6.8181818182vw;
    margin-bottom: 6.8181818182vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-banners {
    gap: 30px;
    justify-content: center;
    margin-bottom: 80px;
  }
}
.p-banners img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-banners img {
    width: 100%;
  }
}
@media print, screen and (min-width: 769px) {
  .p-banners img {
    width: 463px;
  }
}
.p-banners a {
  display: block;
  position: relative;
}
@media print, screen and (min-width: 769px) {
  .p-banners a:hover p {
    opacity: 1;
  }
}
.p-banners p {
  font-size: 1.8rem;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  display: grid;
  height: 100%;
  left: 0;
  opacity: 0;
  place-content: center;
  position: absolute;
  top: 0;
  transition: 0.3s ease-in-out;
  width: 100%;
}

@media only screen and (max-width: 768px) {
  .p-news {
    margin-bottom: 6.8181818182vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news {
    margin-bottom: 80px;
  }
}
.p-news .c-sec-title {
  background-image: url("../img/txt-news.svg");
}
@media only screen and (max-width: 768px) {
  .p-news .c-sec-title {
    margin-bottom: 5.9090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news .c-sec-title {
    margin-bottom: 26px;
  }
}
.p-news .c-sec-title img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-news .c-sec-title img {
    width: 11.3636363636vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news .c-sec-title img {
    width: 70px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news .p-news-list {
    margin-bottom: 35px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news .p-news-list li:not(:last-child) {
    margin-bottom: 14px;
  }
}
@media only screen and (max-width: 768px) {
  .p-news .p-news-date {
    width: 19.5454545455vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-news .p-news-date {
    font-size: 1.6rem;
    width: 86px;
  }
}

@media only screen and (max-width: 768px) {
  .p-plan {
    margin-bottom: 6.8181818182vw;
    padding-inline: 4.5454545455vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan {
    margin-bottom: 80px;
    padding-inline: 50px;
  }
}
.p-plan .c-sec-title {
  background-image: url("../img/txt-plan.svg");
}
@media only screen and (max-width: 768px) {
  .p-plan .c-sec-title {
    margin-bottom: 6.8181818182vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .c-sec-title {
    margin-bottom: 30px;
  }
}
.p-plan .c-sec-title img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-plan .c-sec-title img {
    width: 10.9090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .c-sec-title img {
    width: 70px;
  }
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-slider .slick-slide {
    padding-inline: 1.1363636364vw;
    width: 60vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-slider .slick-slide {
    padding-inline: 10px;
    width: 274px;
  }
}
.p-plan .p-plan-slider .slick-arrow {
  display: block;
  overflow: hidden;
  position: absolute;
  text-indent: -999px;
  top: 50%;
  translate: 0 -50%;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-slider .slick-arrow {
    height: 4.3181818182vw;
    width: 2.5vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-slider .slick-arrow {
    height: 19px;
    width: 11px;
  }
}
.p-plan .p-plan-slider .slick-prev {
  background: url("../img/btn-prev.svg") no-repeat left top/cover;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-slider .slick-prev {
    left: -3.4090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-slider .slick-prev {
    left: -20px;
  }
}
.p-plan .p-plan-slider .slick-next {
  background: url("../img/btn-next.svg") no-repeat left top/cover;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-slider .slick-next {
    right: -3.4090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-slider .slick-next {
    right: -20px;
  }
}
.p-plan .p-plan-slide a {
  background: #fff;
  display: block;
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-slide a:hover .p-plan-image img {
    scale: 1.1;
  }
}
.p-plan .p-plan-image {
  overflow: hidden;
}
.p-plan .p-plan-image img {
  height: auto;
  transition: 0.3s ease-in-out;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-detail {
    padding: 2.2727272727vw 2.2727272727vw 3.6363636364vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-detail {
    padding: 10px 10px 16px;
  }
}
.p-plan .p-plan-category {
  align-items: center;
  display: flex;
  flex-shrink: 0;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-category {
    gap: 2.2727272727vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-category {
    gap: 10px;
  }
}
.p-plan .p-plan-category p {
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-category p {
    font-size: 2.7272727273vw;
    padding-left: 1.8181818182vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-category p {
    font-size: 1.2rem;
    padding-left: 8px;
  }
}
.p-plan .p-plan-category p::before {
  content: "";
  display: block;
  left: 0;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-category p::before {
    height: 0.9090909091vw;
    width: 0.9090909091vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-category p::before {
    height: 4px;
    width: 4px;
  }
}
.p-plan .p-plan-category p.-cat01::before {
  background: #e50012;
}
.p-plan .p-plan-category p.-cat02::before {
  background: var(--lightblue);
  border-radius: 100%;
}
.p-plan .p-plan-title {
  font-weight: normal;
  line-height: 1.25;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-title {
    font-size: 3.6363636364vw;
    margin-bottom: 1.8181818182vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-title {
    font-size: 1.6rem;
    margin-bottom: 8px;
  }
}
.p-plan .p-plan-text {
  line-height: 1.285;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}
@media only screen and (max-width: 768px) {
  .p-plan .p-plan-text {
    font-size: 3.1818181818vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan .p-plan-text {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 768px) {
  .p-plan-list {
    display: flex;
    flex-direction: column;
    gap: 4.5454545455vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 40px;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan-list a {
    transition: opacity 0.4s;
  }
  .p-plan-list a:hover {
    opacity: 0.7;
  }
}

.p-plan-item-bnr img {
  width: 100%;
  height: auto;
}
.p-plan-item-bnr figcaption {
  margin-top: 0.5em;
}
@media only screen and (max-width: 768px) {
  .p-plan-item-bnr figcaption {
    font-size: 3.1818181818vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-plan-item-bnr figcaption {
    font-size: 1.6rem;
  }
}

@media only screen and (max-width: 768px) {
  .p-faq {
    margin-bottom: 9.0909090909vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-faq {
    margin-bottom: 50px;
  }
}
.p-faq .c-sec-title {
  background-image: url("../img/txt-faq.svg");
}
@media only screen and (max-width: 768px) {
  .p-faq .c-sec-title {
    margin-bottom: 3.8636363636vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-faq .c-sec-title {
    background-position: center top;
    justify-content: center;
    margin-bottom: 34px;
  }
}
.p-faq .c-sec-title img {
  height: auto;
}
@media only screen and (max-width: 768px) {
  .p-faq .c-sec-title img {
    width: 6.8181818182vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-faq .c-sec-title img {
    width: 43px;
  }
}

@media only screen and (max-width: 768px) {
  .p-faq-main {
    border-top: 1px solid var(--black);
    margin-inline: -4.5454545455vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-faq-main {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 40px;
  }
}

.p-faq-item {
  border-bottom: 1px solid var(--black);
}
@media print, screen and (min-width: 769px) {
  .p-faq-item:first-child {
    border-top: 1px solid var(--black);
  }
}

.p-faq-title a {
  display: grid;
  font-weight: normal;
  letter-spacing: 0.05em;
  place-content: center start;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .p-faq-title a {
    font-size: 3.4090909091vw;
    height: 12.2727272727vw;
    padding-left: 2.2727272727vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-faq-title a {
    font-size: 1.6rem;
    height: 54px;
    padding-left: 12px;
  }
}
.p-faq-title a::after {
  background: url("../../img/icon-open.svg") no-repeat left top/cover;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
}
@media only screen and (max-width: 768px) {
  .p-faq-title a::after {
    height: 3.1818181818vw;
    right: 1.8181818182vw;
    width: 3.1818181818vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-faq-title a::after {
    height: 15px;
    right: 14px;
    width: 15px;
  }
}
.p-faq-title a.is-active::after {
  background-image: url("../../img/icon-close.svg");
}

.p-faq-body {
  display: none;
}
@media only screen and (max-width: 768px) {
  .p-faq-body p {
    font-size: 3.1818181818vw;
    padding-bottom: 2.7272727273vw;
  }
}
@media print, screen and (min-width: 769px) {
  .p-faq-body p {
    font-size: 1.4rem;
    padding-bottom: 10px;
  }
}

.p-recruit {
  text-align: center;
}
.p-recruit img {
  height: auto;
}
@media print, screen and (min-width: 769px) {
  .p-recruit img {
    width: 848px;
  }
}
.p-recruit a {
  transition: 0.3s ease-in-out;
}
@media print, screen and (min-width: 769px) {
  .p-recruit a:hover {
    opacity: 0.7;
  }
}