@charset "utf-8";
/* CSS Document */
/* ==============================
   基本設定（モバイルファースト）
============================== */
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  padding: 0;
}
img {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
/* 共通セクション */
.section {
  width: 100%;
  overflow: hidden;
  text-align: center;
  padding: 0;
}
.sp-only {
  display: block
}
.pc-only {
  display: none
}
.bg-blue {
  background-color: #0000a0
}
/* 初期状態（非表示・位置ずらし） */
.fade-in, .fade-in-up, .fade-in-down, .fade-in-left, .fade-in-right {
  opacity: 0;
  transform: translateY(0);
  transition: all 0.7s ease-out;
}
/* 下から */
.fade-in-up {
  transform: translateY(40px);
}
/* 上から */
.fade-in-down {
  transform: translateY(-40px);
}
/* 左から */
.fade-in-left {
  transform: translateX(-40px);
}
/* 右から */
.fade-in-right {
  transform: translateX(40px);
}
/* 表示状態（IntersectionObserverで追加） */
.is-visible {
  opacity: 1;
  transform: translate(0, 0);
}
/* セクション */
.sp-sec2, .sp-sec3, .sp-sec4, .sp-sec5, .sp-sec6, .sp-sec7, .sp-sec8, .sp-sec9, .sp-sec9-b, .sp-sec9-c, .sp-sec9-2, .sp-sec10, .sp-sec11, .sp-sec12, .sp-sec12-end, .sp-sec13, .sp-sec14 {
  background-size: 100% auto;
  background-position: center;
  background-repeat: no-repeat;
  margin: 0;
  padding: 0;
}
.sp-sec2 {
  background-image: url("../images/sp/sp-sec-2-bg.jpg");
}
.sp-sec3 {
  background-image: url("../images/sp/sp-sec-3-bg.jpg");
}
.sp-sec4 {
  background-image: url("../images/sp/sp-sec-4-bg.jpg");
}
.sp-sec5 {
  background-image: url("../images/sp/sp-sec-5-bg.jpg");
}
.sp-sec6 {
  background-image: url("../images/sp/sp-sec-6-bg.jpg");
}
.sp-sec7 {
  background-image: url("../images/sp/sp-sec-7-bg.jpg");
  aspect-ratio: 750 / 1018;
  padding: 0px 20px 0px 20px;
}
.sp-sec-7-1 img {
  width: 47%;
  margin: 0 auto;
  padding-top: 12%;
  display: block;
}
.sp-sec-7-box {
  width: 100%;
  margin: 0 auto;
  padding-top: 7%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4%;
  justify-items: center;
  align-items: center;
  box-sizing: border-box;
}
.sp-sec-7-box a {
  display: block;
  width: 88%;
}
.sp-sec-7-box img {
  width: 100%;
  height: auto;
  display: block;
}
.sp-sec8 {
  background-image: url("../images/sp/sp-sec-8-bg.jpg");
}
.sp-sec9 {
  background-image: url("../images/sp/sp-sec-9-bg.jpg");
}
.sp-sec9-b {
  background-image: url("../images/sp/sp-sec-9-b-bg.jpg");
}
.sp-sec9-c {
  background-image: url("../images/sp/sp-sec-9-c-bg.jpg");
}
.sp-sec9-2 {
  background-image: url("../images/sp/sp-sec-9-2-bg.jpg");
}
.sp-sec10 {
  background-image: url("../images/sp/sp-sec-10-bg.jpg");
}
.sp-sec11 {
  background-image: url("../images/sp/sp-sec-11-bg.jpg");
}
.sp-sec12-end {
  background-image: url("../images/sp/sp-sec-12-end-bg.jpg");
  aspect-ratio: 750 / 641;
}
.sp-sec12-end-box {
  width: 80%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
  margin-top: 20px
}
.sp-sec12-end-box a {
  display: block;
  width: 20%;
}
.sp-sec12-end-box a img {
  width: 100%;
  height: auto;
  display: block;
}
.sp-sec12 {
  background-image: url("../images/sp/sp-sec-12-bg.jpg");
}
.sp-sec13 {
  margin-bottom: -1px;
  background-image: url("../images/sp/sp-sec-13-bg.jpg");
}
.sp-sec14 {
  background-image: url("../images/sp/sp-sec-14-bg.jpg");
  aspect-ratio: 750 / 863;
}
.sp-sec-14-box {
  width: 80%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
}
.sp-sec-14-box a {
  display: block;
  width: 20%;
}
.sp-sec-14-box a img {
  width: 100%;
  height: auto;
  display: block;
}




/* ==============================
   PC向けスタイル（769px以上）
============================== */
@media (min-width: 769px) {
  .section {
    max-width: 1200px;
    margin: 0 auto;
  }
  .sp-only {
    display: none
  }
  .pc-only {
    display: block
  }
  .bg-blue {
    background-color: #fff
  }
  .pc-max-width {
    max-width: 1280px;
    margin: 0 auto
  }
  /* セクション */
  .pc-sec2, .pc-sec3, .pc-sec4, .pc-sec5, .pc-sec6, .pc-sec7, .pc-sec8, .pc-sec9, .pc-sec9-b, .pc-sec9-c, .pc-sec9-2, .pc-sec10, .pc-sec11, .pc-sec12-end, .pc-sec12, .pc-sec13, .pc-sec14 {
    background-size: 100% auto;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0;
    padding: 0;
  }
  .pc-sec2 {
    background-image: url("../images/pc/pc-sec-2-bg.jpg");
  }
  .pc-sec3 {
    background-image: url("../images/pc/pc-sec-3-bg.jpg");
  }
  .pc-sec4 {
    background-image: url("../images/pc/pc-sec-4-bg.jpg");
  }
  .pc-sec5 {
    background-image: url("../images/pc/pc-sec-5-bg.jpg");
  }
  .pc-sec6 {
    background-image: url("../images/pc/pc-sec-6-bg.jpg");
  }
  .pc-sec7 {
    background-image: url("../images/pc/pc-sec-7-bg.jpg");
    aspect-ratio: 1280 / 545;
  }
  .pc-sec-7-1 img {
    width: 25%;
    margin: 0 auto;
    padding-top: 8%;
    display: block;
  }
  .pc-sec-7-box {
    width: 100%;
    margin: 0 auto;
    padding: 3% 9% 0% 9%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    justify-items: center;
    align-items: center;
    box-sizing: border-box;
  }
  .pc-sec-7-box a {
    display: block;
    width: 95%;
  }
  .pc-sec-7-box img {
    width: 100%;
    height: auto;
    display: block;
  }
  .pc-sec8 {
    background-image: url("../images/pc/pc-sec-8-bg.jpg");
  }
  .pc-sec9 {
    background-image: url("../images/pc/pc-sec-9-bg.jpg");
  }
  .pc-sec9-b {
    background-image: url("../images/pc/pc-sec-9-b-bg.jpg");
  }
  .pc-sec9-c {
    background-image: url("../images/pc/pc-sec-9-c-bg.jpg");
  }
  .pc-sec9-2 {
    background-image: url("../images/pc/pc-sec-9-2-bg.jpg");
  }
  .pc-sec10 {
    background-image: url("../images/pc/pc-sec-10-bg.jpg");
  }
  .pc-sec11 {
    background-image: url("../images/pc/pc-sec-11-bg.jpg");
  }
	
  .pc-sec12 {
    background-image: url("../images/pc/pc-sec-12-bg.jpg");
  }	
	
  .pc-sec12-end {
    background-image: url("../images/pc/pc-sec-12-end-bg.jpg");
    aspect-ratio: 1280 / 634;
  }

  .pc-sec-12-end-box {
    width: 50%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
	  margin-top: 20px
  }
  .pc-sec-12-end-box a {
    display: block;
    width: 15%;
  }
  .pc-sec-12-end-box a img {
    width: 100%;
    height: auto;
    display: block;
  }
  .pc-sec13 {
    background-image: url("../images/pc/pc-sec-13-bg.jpg");
  }
  .pc-sec14 {
    background-image: url("../images/pc/pc-sec-14-bg.jpg");
    aspect-ratio: 1280 / 910;
  }
  .pc-sec-14-box {
    width: 50%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-sizing: border-box;
  }
  .pc-sec-14-box a {
    display: block;
    width: 15%;
  }
  .pc-sec-14-box a img {
    width: 100%;
    height: auto;
    display: block;
  }
}