@charset "UTF-8";
/* CSS Document */
/*---------------------------------------------------------------------
	
　　下層共通

---------------------------------------------------------------------*/
/*---------------------------------------------------------------------
	header
---------------------------------------------------------------------*/
.header {
  height: 70px;
  background-color: rgba(255, 255, 255, 0.9);
}
.header:not(.move) .header-logo a img.hover {
  opacity: 0;
}
.header nav ul li a {
  color: #000000;
}
.header nav ul li.current span {
  color: var(--orange);
}
.header nav ul li.current a span::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--orange);
}
.header-tel span.tel-txt {
  font-size: clamp(1.2rem, 0.9375vw, 1.5rem);
  letter-spacing: -0.03em;
}
.header-tel span.tel-number {
  font-size: clamp(1.2rem, 2.125vw, 3.4rem);
  line-height: 1;
}
/*---------------------------------------------------------------------
	パンくず
---------------------------------------------------------------------*/
.breadcrumbs {
  position: absolute;
  top: 110px;
  left: 5vw;
  z-index: 5;
  column-gap: 15px;
}
.breadcrumbs li {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  column-gap: 15px;
  font-size: 1.2rem;
  font-weight: 600;
}
.breadcrumbs li:not(:last-child)::after {
  content: '＞';
  position: relative;
  display: block;
  margin: 0 5px;
}
/*---------------------------------------------------------------------
	mv
---------------------------------------------------------------------*/
.mv {
  margin-top: -70px;
  position: relative;
  height: 570px;
}
/*.mv::after {
  background: linear-gradient(45deg, rgba(0, 0, 0, 0.35) 0%, rgba(255, 255, 255, 0) 100%);
  z-index: 4;
}*/
/*.mv.dark::after {
  background: linear-gradient(45deg, rgba(0, 0, 0, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
}*/
.mv .img_wrap {
  position: relative;
  z-index: 3;
  overflow: clip;
}
.mv .img_wrap, .mv .img_wrap img {
  width: 100%;
  height: 100%;
  max-height: inherit;
}
.mv .img_wrap img {
  object-fit: cover;
  object-position: center;
}
.main-wrap {
  position: absolute;
  top: calc(50% + 2.1875vw);
  left: 12.5vw;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 5;
}
.main-wrap .main-wrap__ttl {
  margin-bottom: 1.875vw;
}
.main-wrap .main-wrap__ttl .main-wrap__ttl-main {
  font-size: clamp(1.2rem, 3.375vw, 5.4rem);
  font-family: var(--sp);
  margin-left: -5px;
}
.main-wrap .main-wrap__ttl .main-wrap__ttl-sub {
  font-size: clamp(1.2rem, 1.25vw, 2.0rem);
  margin-bottom: 1.875vw;
}
/*---------------------------------------------------------------------
	プライバシーポリシー
---------------------------------------------------------------------*/
.privacy-list {
  grid-row-gap: 60px;
  margin-top: 150px;
}
.privacy-list h3 {
  font-size: clamp(1.2rem, 1.375vw, 2.2rem);
  margin-bottom: 20px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
.privacy-list ol {
  counter-reset: number;
  margin-top: 10px;
}
.privacy-list ol li {
  position: relative;
  padding-left: 40px;
}
.privacy-list ol li::before {
  counter-increment: number;
  content: '（'counter(number) '）';
  position: absolute;
  left: 0;
}
.privacy-list p {
  line-height: 2.1;
}
.privacy-list .info {
  margin-top: 20px;
  line-height: 1.6;
}
/*---------------------------------------------------------------------
	募集要項
---------------------------------------------------------------------*/
.entry-guide {
  padding: 150px 0;
}
/*---------------------------------------------------------------------
	お問い合わせページ　お問い合わせエリア
---------------------------------------------------------------------*/
.contact-area.contact-page {
  padding: 0;
  margin-bottom: 50px;
}
.contact-area.contact-page .contact-box {
  padding: 1.25vw 5%;
}
.contact-area.contact-page .contact-box > .flex {
  justify-content: center;
}
.contact-area.contact-page .telbox p {
  font-size: clamp(1.2rem, 1.625vw, 2.6rem);
}
.contact-area.contact-page .telbtn a {
  font-size: clamp(1.2rem, 4.3125vw, 6.9rem);
}
.contact-area.contact-page .telbtn {
  align-items: center;
  column-gap: 2.5vw;
}
.contact-area.contact-page .reception {
  position: relative;
}
.contact-area.contact-page .reception::before, .contact-area.contact-page .reception::after {
  content: "";
  display: inline-block;
  width: clamp(4px, 0.375vw, 6px);
  height: clamp(40px, 3.125vw, 51px);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  background-image: url("../img/entry/toji.svg");
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.contact-area.contact-page .reception::before {
  left: -0.9375vw;
}
.contact-area.contact-page .reception::after {
  right: -0.9375vw;
  -webkit-transform: translateY(-50%) scaleX(-1);
  transform: translateY(-50%) scaleX(-1);
}
/*---------------------------------------------------------------------
	成田防災の想い
---------------------------------------------------------------------*/
.message-box {
  grid-row-gap: 120px;
}
.message-box__item_img {
  width: 30vw;
  max-width: 480px;
  height: 23.125vw;
  max-height: 370px;
}
.message-box__item_txt {
  width: 46.3%;
}
.message-box__item_txt h3 {
  font-size: clamp(1.2rem, 1.375vw, 2.2rem);
  margin-bottom: 40px;
  padding-top: 50px;
  letter-spacing: 0.1em;
  font-weight: 500;
  line-height: 1.8;
  position: relative;
}
.message-box__item_txt h3::before, .message-box__item_main .message-box__item_txt p::before {
  content: "";
  display: block;
  width: 40px;
  height: 1px;
  background-color: var(--green);
  position: absolute;
  top: 0;
  left: 0;
}
.message-box__item_main .message-box__item_img {
  width: 20.43vw;
  max-width: 325px;
  height: 20.43vw;
  max-height: 325px;
  border-radius: 100%;
  overflow: hidden;
}
.message-box__item_main .message-box__item_img .img-box {
  border-radius: 100%;
}
.message-box__item_main .bgbox::after {
  display: none;
}
.message-box__item_main .message-box__item_txt {
  width: 62.5%;
  align-items: flex-start;
  justify-content: flex-end;
  column-gap: 5vw;
}
.message-box__item_main .message-box__item_txt p {
  width: 66.67%;
  padding-top: 50px;
  position: relative;
}
.message-box__item_main .message-box__item_txt h3 {
  padding: 0;
}
.message-box__item_main .message-box__item_txt h3::before {
  display: none;
}
/*---------------------------------------------------


    sp


---------------------------------------------------*/
@media screen and (max-width: 768px) {
  /*---------------------------------------------------------------------
	
　　下層共通

---------------------------------------------------------------------*/
  /*---------------------------------------------------------------------
	header
---------------------------------------------------------------------*/
  .header:not(.move) {
    height: 60px;
    background-color: transparent;
  }
  .header.change {
    background-color: #ffffff;
  }
  .header .header-logo a img.hover {
    opacity: 1;
  }
  .header:not(.move) .header-logo a img.hover {
    opacity: 1;
  }
  .header.change .header-logo a img.hover {
    opacity: 0;
  }
  .header nav ul li a {
    color: #000000;
  }
  .header nav ul li.current span {
    color: var(--orange);
  }
  .header nav ul li.current a span::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: var(--orange);
  }
  .header-tel span.tel-txt {
    font-size: clamp(1.2rem, 0.9375vw, 1.5rem);
    letter-spacing: -0.03em;
  }
  .header-tel span.tel-number {
    font-size: clamp(1.2rem, 2.125vw, 3.4rem);
    line-height: 1;
  }
  /*---------------------------------------------------------------------
	パンくず
---------------------------------------------------------------------*/
  .breadcrumbs {
    top: 80px;
    left: 5%;
    column-gap: 3px;
    flex-wrap: wrap;
    grid-row-gap: 5px;
  }
  .breadcrumbs li {
    column-gap: 3px;
  }
  /*---------------------------------------------------------------------
	mv
---------------------------------------------------------------------*/
  .mv {
    margin-top: 0;
    height: auto;
  }
  .mv::after {
    background: linear-gradient(45deg, rgba(0, 0, 0, 0.65) 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 4;
  }
  .mv.dark::after {
    background: linear-gradient(45deg, rgba(0, 0, 0, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
  }
  .mv .img_wrap {
    position: relative;
    z-index: 3;
  }
  .mv .img_wrap, .mv .img_wrap img {
    width: 100%;
    height: 100%;
    max-height: inherit;
  }
  .mv .img_wrap img {
    object-fit: cover;
    object-position: center;
  }
  .main-wrap {
    top: 50%;
    left: 5%;
    width: 90%;
  }
  .main-wrap .main-wrap__ttl {
    margin-bottom: 40px
  }
  .main-wrap .main-wrap__ttl .main-wrap__ttl-main {
    font-size: 3.4rem;
    margin-left: 0;
  }
  .main-wrap .main-wrap__ttl .main-wrap__ttl-sub {
    font-size: 1.4rem;
    margin-bottom: 15px;
  }
  /*---------------------------------------------------------------------
	プライバシーポリシー
---------------------------------------------------------------------*/
  section.privacy {
    padding-top: 150px;
  }
  .privacy-list {
    grid-row-gap: 40px;
    margin-top: 60px;
  }
  .privacy-list h3 {
    font-size: 1.7rem;
    margin-bottom: 16px;
  }
  .privacy-list ol li {
    padding-left: 30px;
  }
  .privacy-list ol li::before {
    left: -5px;
  }
  .privacy-list p {
    line-height: 1.8;
  }
  .privacy-list .info {
    margin-top: 16px;
  }
  .privacy-list__item a {
    display: inline;
  }
  /*---------------------------------------------------------------------
	募集要項
---------------------------------------------------------------------*/
  .entry-guide {
    padding: 30px 0;
  }
  /*---------------------------------------------------------------------
	お問い合わせページ　お問い合わせエリア
---------------------------------------------------------------------*/
  .contact-area.contact-page {
    margin-bottom: 40px;
  }
  .contact-area.contact-page .contact-box {
    padding: 20px 0;
  }
  .contact-area.contact-page .telbox {
    margin-bottom: 0;
  }
  .contact-area.contact-page .telbox p {
    font-size: 1.7rem;
    margin-bottom: 0;
  }
  .contact-area.contact-page .telbtn a {
    font-size: 4.6rem;
  }
  .contact-area.contact-page .telbtn {
    column-gap: 0;
    grid-row-gap: 10px;
  }
  .contact-area.contact-page .reception {
    font-size: 2.0rem;
  }
  .contact-area.contact-page .reception .out {
    font-size: 2.2rem;
  }
  .contact-area.contact-page .reception::before, .contact-area.contact-page .reception::after {
    content: "（";
    display: inline-block;
    width: auto;
    height: auto;
    position: static;
    top: 50%;
    background-image: none;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  .contact-area.contact-page .reception::before {
    left: auto;
    margin-right: 5px;
  }
  .contact-area.contact-page .reception::after {
    right: auto;
    -webkit-transform: translateY(0) scaleX(-1);
    transform: translateY(0) scaleX(-1);
    margin-left: 5px;
  }
  /*---------------------------------------------------------------------
	成田防災の想い
---------------------------------------------------------------------*/
  .message-box {
    grid-row-gap: 60px;
  }
  .message-box__item_img {
    width: 100%;
    max-width: 480px;
    height: auto;
    max-height: none;
    aspect-ratio: 48 / 37;
    margin-bottom: 50px;
  }
  .message-box__item_txt {
    width: 100%;
  }
  .message-box__item_txt h3 {
    font-size: 1.7rem;
    margin-bottom: 20px;
    padding-top: 20px;
    line-height: 1.8;
  }
  .message-box__item_txt p {
    line-height: 2;
  }
  .message-box__item_main .message-box__item_img {
    width: 188px;
    height: 188px;
    margin-bottom: 0;
  }
  .message-box__item_main .message-box__item_txt {
    width: 100%;
    align-items: center;
    justify-content: center;
  }
  .message-box__item_main .message-box__item_txt p {
    width: 100%;
    padding-top: 20px;
    line-height: 2;
  }
  .message-box__item_main .message-box__item_txt h3 {
    padding: 0;
  }
  .message-box__item_main .message-box__item_txt h3::before {
    display: none;
  }
}
/*---------------------------------------------------------------------
	動き
---------------------------------------------------------------------*/
.mv .img_wrap img {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-transition-delay: .3s;
  transition-delay: .3s;
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  opacity: 0;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: opacity, -webkit-transform, -webkit-filter;
  transition-property: transform, opacity, filter;
  transition-property: transform, opacity, filter, -webkit-transform, -webkit-filter;
  will-change: transform, opacity;
}
.mv.action .img_wrap img {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}