.sr_only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/* @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap'); */
strong,
b {
  font-weight: inherit;
}
.sub_header_top{display: none}
.lp01 {
  font-feature-settings: 'palt' on;
  overflow: hidden;
  /* font-size: 62.5%; */
  scroll-behavior: smooth;
}

img {
  height: auto;
  max-width: 100%;
  width: 100%;
}

/* 
@media screen and (min-width:1440px) {
  .lp01 {
    font-size: calc(100vw / 1440 * 10);
  }
}

@media screen and (max-width:1200px) {
  .lp01 {
    font-size: calc(100vw / 1200 * 10);
  }
}

@media screen and (max-width:768px) {
  .lp01 {
    font-size: calc(100vw / 375 * 10);
  }
} */
/* 既定（サイト全体）。外では rem 相当の挙動にしておくと安心 */
:root {
  --u: 1rem;
}

/* ここから中だけ vw でスケール */
.lp01 {
  --u: 10px;
  /* 初期：10px相当（=rem基準と合わせたい時） */
}

@media (min-width: 1440px) {
  .lp01 {
    --u: calc(100vw / 1440 * 10);
  }
}

@media (max-width: 767px) {
  .lp01 {
    --u: calc(100vw / 375 * 10);
  }
}

:has(.lp01) .footer_link {
  display: none;
}

/* ------------------------------------------
  hero
------------------------------------------ */
.hero {
  background-image: url(../img/lp01/hero.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: calc(var(--u) * 144);
  display: block;
  height: calc(var(--u) * 81.4);
  margin-top: 66px;
  position: relative;
}

/* @media screen and (min-width: 1440px) {
  .hero {
    height: auto;
    aspect-ratio: 1440/962;
    background-size: cover;
  }
} */
.hero .btn {
  align-items: center;
  background-color: #fe5;
  background-image: url(../img/lp01/arrow01.png);
  background-position: center right calc(var(--u) * 3.5);
  background-repeat: no-repeat;
  background-size: calc(var(--u) * 1.3);
  border-radius: calc(var(--u) * 10);
  bottom: calc(var(--u) * 10.4);
  color: #0066a1;
  display: flex;
  filter: drop-shadow(0 0 calc(var(--u) * 1) rgba(0, 0, 0, .25));
  font-size: calc(var(--u) * 2.4);
  font-weight: 700;
  height: calc(var(--u) * 8.8);
  justify-content: center;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: calc(var(--u) * 37.5);
  ;
  ;
}

@media screen and (max-width: 767px) {
  .hero {
    aspect-ratio: 375/470;
    background-image: url(../img/lp01/hero_sp.jpg);
    background-size: cover;
    height: auto;
    margin-top: 50px;
  }

  .hero .btn {
    background-position: center right calc(var(--u) * 1.5);
    background-size: calc(var(--u) * 1);
    bottom: calc(var(--u) * 2.7);
    font-size: calc(var(--u) * 1.4);
    height: calc(var(--u) * 5);
    width: calc(var(--u) * 20.6);
  }
}

/* ------------------------------------------
  sec01
------------------------------------------ */
.sec01 {
  background-image: url(../img/lp01/01_bg.jpg);
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: calc(var(--u) * 144);
  height: calc(var(--u) * 111.3);
  position: relative;
}

.sec01 .wrap {
  padding-top: calc(var(--u) * 12);
  position: relative;
}

.sec01 .wrap p {
  color: #0066a1;
  font-family: 'Noto Serif JP';
  font-size: calc(var(--u) * 2);
  font-weight: 600;
  line-height: 2.5;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .sec01 {
    background-image: url(../img/lp01/01_bg_sp.png);
    background-position: center top;
    background-size: cover;
    height: auto;
    margin-top: calc(var(--u) * -2);
  }

  .sec01 .wrap {
    padding-bottom: calc(var(--u) * 20);
    padding-left: calc(var(--u) * 2);
    padding-right: calc(var(--u) * 2);
    padding-top: calc(var(--u) * 8);
    position: relative;
  }

  .sec01 .wrap p {
    font-size: calc(var(--u) * 1.6);
    line-height: 2;
  }
}

/* ------------------------------------------
  sec02
------------------------------------------ */
.sec02 {
  background: #e9f6fd;
  position: relative;
}

.sec02 .wrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding-bottom: calc(var(--u) * 10);
}

.sec02 .wrap h2 {
  align-items: center;
  color: #212121;
  display: flex;
  font-family: 'Noto Serif JP';
  font-size: calc(var(--u) * 4);
  font-weight: 600;
  gap: calc(var(--u) * 2);
  justify-content: center;
  ;
}

.sec02 .wrap h2 strong {
  color: #0066a1;
}

.sec02 .wrap h2::before,
.sec02 .wrap h2::after {
  background: #212121;
  content: '';
  height: calc(var(--u) * 5);
  width: calc(var(--u) * .2);
}

.sec02 .wrap h2::before {
  transform: rotate(-35deg);
}

.sec02 .wrap h2::after {
  transform: rotate(35deg);
}

.sec02 .wrap ul {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--u) * 3.7) calc(var(--u) * 4);
  justify-content: center;
  margin-top: calc(var(--u) * 6);
  max-width: calc(var(--u) * 104.2);
}

.sec02 .wrap ul li {
  align-items: center;
  background-image: url(../img/lp01/02_list.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  color: #737373;
  display: flex;
  font-size: calc(var(--u) * 2);
  font-weight: 800;
  height: calc(var(--u) * 12.3);
  justify-content: center;
  line-height: 1.5;
  padding: 0 calc(var(--u) * .9) calc(var(--u) * .3) 0;
  text-align: center;
  width: calc(var(--u) * 32);
}

.sec02 .wrap ul li span strong {
  background: linear-gradient(transparent 60%, #fe5 60%);
}

.sec02 .wrap .arrow {
  background-image: url(../img/lp01/tri01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  height: calc(var(--u) * 6.4);
  margin: calc(var(--u) * 6) auto calc(var(--u) * 3);
  width: calc(var(--u) * 38.1);
}

.sec02 .wrap p {
  width: calc(var(--u) * 48.7);
}

@media screen and (max-width: 767px) {
  .sec02 .wrap {
    padding-bottom: calc(var(--u) * 8);
    padding-left: calc(var(--u) * 2);
    padding-right: calc(var(--u) * 2);
    padding-top: calc(var(--u) * 4);
  }

  .sec02 .wrap h2 {
    font-size: calc(var(--u) * 2.6);
    line-height: 1.3;
    ;
  }

  .sec02 .wrap h2 span {
    position: relative;
    right: calc(var(--u) * -.8);
  }

  .sec02 .wrap h2 strong {
    font-size: calc(var(--u) * 3.3);
  }

  .sec02 .wrap h2 b {
    position: relative;
    right: calc(var(--u) * -.5);
  }

  .sec02 .wrap h2::before,
  .sec02 .wrap h2::after {
    bottom: calc(var(--u) * -.5);
    height: calc(var(--u) * 7);
    position: relative;
  }

  .sec02 .wrap ul {
    gap: calc(var(--u) * 2);
    margin-top: calc(var(--u) * 4);
  }

  .sec02 .wrap .arrow {
    margin: calc(var(--u) * 3) auto calc(var(--u) * 2);
    width: calc(var(--u) * 30);
  }

  .sec02 .wrap p {
    width: 100%;
  }
}

/* ------------------------------------------
  sec03
------------------------------------------ */
.sec03 {
  background-image: url(../img/lp01/03_bg.png);
  background-position: right top calc(var(--u) * -12);
  background-repeat: no-repeat;
  background-size: calc(var(--u) * 144);
  position: relative;
}

.sec03::before,
.sec03::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  position: absolute;
  z-index: 0;
}

.sec03::before {
  background-image: url(../img/lp01/03_deco01.png);
  height: calc(var(--u) * 19.8);
  left: calc(var(--u) * 8);
  top: calc(var(--u) * 5);
  width: calc(var(--u) * 30);
}

.sec03::after {
  background-image: url(../img/lp01/03_deco02.png);
  bottom: calc(var(--u) * 45);
  height: calc(var(--u) * 13.4);
  left: calc(var(--u) * -8);
  width: calc(var(--u) * 17.8);
}

.sec03 .wrap {
  margin: 0 auto;
  max-width: calc(var(--u) * 122);
  padding-left: calc(var(--u) * 2);
  padding-right: calc(var(--u) * 2);
  padding-top: calc(var(--u) * 18);
  position: relative;
  z-index: 2;
}

.sec03 .wrap h2 {
  display: flex;
  flex-direction: column;
  gap: calc(var(--u) * 1);
  position: relative;
}

.sec03 .wrap h2 .h2_1 {
  color: #0066a1;
  font-family: 'Noto Serif JP';
  font-size: calc(var(--u) * 3.4);
  font-weight: 600;
}

.sec03 .wrap h2 .h2_1 strong {
  background: #0066a1;
  color: #fff;
  margin-left: calc(var(--u) * .5);
  padding: 0 calc(var(--u) * 1.3) calc(var(--u) * .4);
  ;
}

.sec03 .wrap h2 .h2_2 {
  width: calc(var(--u) * 26.929);
}

.sec03 .wrap ul {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--u) * 7) calc(var(--u) * 5);
  justify-content: center;
  margin-top: calc(var(--u) * 7.7);
  position: relative;
}

.sec03 .wrap ul li {
  align-items: center;
  background: #fff;
  display: flex;
  filter: drop-shadow(calc(var(--u) * .4) calc(var(--u) * .4) calc(var(--u) * 1.6) rgba(0, 0, 0, .10));
  flex-direction: column;
  height: calc(var(--u) * 53);
  padding: calc(var(--u) * 6.4) calc(var(--u) * 1.6) calc(var(--u) * 1.8);
  position: relative;
  width: calc((100% - var(--u) * 10) / 3);
}

.sec03 .wrap ul li:nth-of-type(2),
.sec03 .wrap ul li:nth-of-type(5),
.sec03 .wrap ul li:nth-of-type(8) {
  top: calc(var(--u) * -5);
  ;
}

.sec03 .wrap ul li:nth-of-type(3),
.sec03 .wrap ul li:nth-of-type(6) {
  top: calc(var(--u) * -10);
}

.sec03 .wrap ul li .num {
  background-image: url(../img/lp01/tri02.png);
  background-repeat: no-repeat;
  background-size: 100%;
  color: #fff;
  font-family: Poppins;
  font-size: calc(var(--u) * 2);
  font-weight: 700;
  height: calc(var(--u) * 11.4);
  left: 0;
  padding-left: calc(var(--u) * 2.2);
  padding-top: calc(var(--u) * 2.2);
  position: absolute;
  top: 0;
  width: calc(var(--u) * 11.4);
}

.sec03 .wrap ul li dl dt {
  /* margin-bottom: calc(var(--u) * .70); */
  color: #0066a1;
  font-size: calc(var(--u) * 2.3);
  font-weight: 800;
  height: calc(var(--u) * 7);
  line-height: 1.5;
  text-align: center;
}

.sec03 .wrap ul li dl dt small {
  display: block;
  font-size: calc(var(--u) * 2);
  font-weight: 600;
}

.sec03 .wrap ul li dl dd {
  color: #212121;
  font-size: calc(var(--u) * 1.8);
  font-weight: 700;
  min-height: calc(var(--u) * 12);
  width: calc(var(--u) * 26.2);
}

.sec03 .wrap ul li dl dd a {
  align-items: center;
  color: #5ea4f0;
  display: flex;
  font-size: calc(var(--u) * 1.4);
  gap: calc(var(--u) * .3);
}

.sec03 .wrap ul li dl dd a::after {
  background-image: url(../img/lp01/icon_out.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: calc(var(--u) * 1.3);
  width: calc(var(--u) * 1.3);
}

.sec03 .wrap ul li dl dd a span {
  text-decoration: underline;
}

.sec03 .wrap ul li .img {
  flex-grow: 1;
  margin-top: calc(var(--u) * 2);
  overflow: hidden;
  width: 100%;
}

.sec03 .wrap ul li .img img {
  height: 100%;
  max-width: inherit;
  object-fit: cover;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .sec03 {
    background-position: center top;
    background-size: cover;
  }

  .sec03::before,
  .sec03::after {
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: '';
    position: absolute;
  }

  .sec03::before {
    left: calc(var(--u) * 2);
    top: calc(var(--u) * -2);
    width: calc(var(--u) * 24);
  }

  .sec03::after {
    bottom: calc(var(--u) * 36);
  }

  .sec03 .wrap {
    padding-left: calc(var(--u) * 2);
    padding-right: calc(var(--u) * 2);
    padding-top: calc(var(--u) * 8);
  }

  .sec03 .wrap h2 {
    align-items: center;
  }

  .sec03 .wrap h2 .h2_1 {
    font-size: calc(var(--u) * 2);
  }

  .sec03 .wrap h2 .h2_1 strong {
    margin-left: calc(var(--u) * .5);
    padding: 0 calc(var(--u) * 1.3) calc(var(--u) * .3);
  }

  .sec03 .wrap h2 .h2_2 {
    width: calc(var(--u) * 26.929 * .8);
  }

  .sec03 .wrap ul {
    gap: calc(var(--u) * 3);
    margin-top: calc(var(--u) * 5);
  }

  .sec03 .wrap ul li {
    height: auto;
    padding: calc(var(--u) * 4) calc(var(--u) * 1.5) calc(var(--u) * 1.5);
    top: 0 !important;
    width: 100%;
  }

  .sec03 .wrap ul li .num {
    height: calc(var(--u) * 9);
    padding-left: calc(var(--u) * 1.6);
    padding-top: calc(var(--u) * 1.1);
    width: calc(var(--u) * 9);
  }

  .sec03 .wrap ul li dl dd {
    min-height: inherit;
  }
}

/* ------------------------------------------
  sec04
------------------------------------------ */
.sec04-sec05 {
  background-image: url(../img/lp01/04-05_bg.png);
  background-position: center top;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: calc(var(--u) * 144);
}

.sec04 {
  position: relative;
}

.sec04::before {
  background-image: url(../img/lp01/04_deco01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: calc(var(--u) * 17.35);
  position: absolute;
  right: calc(var(--u) * 21);
  top: calc(var(--u) * 11);
  width: calc(var(--u) * 13.2);
}

.sec04 .wrap {
  margin: 0 auto;
  max-width: calc(var(--u) * 122);
  padding-left: calc(var(--u) * 2);
  padding-right: calc(var(--u) * 2);
  padding-top: calc(var(--u) * 18);
  position: relative;
  z-index: 2;
}

.sec04 .wrap h2 {
  width: calc(var(--u) * 25.8);
}

.sec04 .wrap .flow {
  display: flex;
  gap: calc(var(--u) * 4.9);
  margin-top: calc(var(--u) * 10);
}

.sec04 .wrap .flow dt {
  align-items: center;
  background: rgba(80, 171, 224, 1);
  color: #fff;
  display: flex;
  font-size: calc(var(--u) * 1.95);
  font-weight: 800;
  height: calc(var(--u) * 19.4);
  justify-content: center;
  letter-spacing: calc((3.9 / 19.45) * 1em);
  position: relative;
  width: calc(var(--u) * 19.4);
}

.sec04 .wrap .flow dt::after {
  background-image: url(../img/lp01/tri03.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: '';
  height: calc(var(--u) * 5.2);
  margin: auto;
  position: absolute;
  right: calc(var(--u) * -2.023);
  top: 0;
  width: calc(var(--u) * 3.75);
}

.sec04 .wrap .flow dd {
  align-items: center;
  display: flex;
  flex-grow: 2;
}

.sec04 .wrap .flow dd ol {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.sec04 .wrap .flow dd ol li {
  position: relative;
  width: calc(var(--u) * 13.42);
}

.sec04 .wrap .flow dd ol li .num {
  align-items: center;
  background: #0066a1;
  border-radius: 100%;
  color: #fff;
  display: flex;
  font-family: Poppins;
  font-size: calc(var(--u) * 1.4);
  font-weight: 700;
  height: calc(var(--u) * 4);
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: calc(var(--u) * 4);
  z-index: 2;
}

.sec04 .wrap .flow dd ol li .pict {
  border-radius: 100%;
  filter: drop-shadow(calc(var(--u) * .4) calc(var(--u) * .4) calc(var(--u) * 1.6) #deedf3);
  position: relative;
  width: 100%;
}

.sec04 .wrap .flow dd ol li+li .pict::before {
  background-image: url(../img/lp01/arrow02.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: '';
  height: calc(var(--u) * 2.2);
  left: calc(var(--u) * -4.4);
  margin: auto;
  position: absolute;
  top: 0;
  width: calc(var(--u) * 2.2);
}

.sec04 .wrap .flow dd ol li p {
  color: #0066a1;
  font-size: calc(var(--u) * 1.7);
  font-weight: 700;
  line-height: 1.5;
  margin-top: calc(var(--u) * .5);
  position: relative;
  text-align: center;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .sec04-sec05 {
    background-position: center right 90%;
    background-size: cover;
  }

  .sec04::before {
    height: calc(var(--u) * 17.35 * .8);
    top: calc(var(--u) * 4);
    width: calc(var(--u) * 13.2 * .8);
  }

  .sec04 .wrap {
    padding-left: calc(var(--u) * 2);
    padding-right: calc(var(--u) * 2);
    padding-top: calc(var(--u) * 16);
  }

  .sec04 .wrap h2 {
    margin: 0 auto;
    width: calc(var(--u) * 25.8 * .8);
  }

  .sec04 .wrap .flow {
    flex-direction: column;
    gap: calc(var(--u) * 4.9);
    margin-top: calc(var(--u) * 6);
  }

  .sec04 .wrap .flow dt {
    height: calc(var(--u) * 6);
    width: 100%;
  }

  .sec04 .wrap .flow dt::after {
    bottom: calc(var(--u) * -3);
    left: 0;
    right: 0;
    top: auto;
    transform: rotate(90deg);
  }

  .sec04 .wrap .flow dd {
    display: block;
  }

  .sec04 .wrap .flow dd ol {
    align-items: center;
    flex-direction: column;
    gap: calc(var(--u) * 8);
  }

  .sec04 .wrap .flow dd ol li {
    white-space: nowrap;
    width: calc(var(--u) * 20);
  }

  .sec04 .wrap .flow dd ol li .num {
    font-size: calc(var(--u) * 2);
    height: calc(var(--u) * 6);
    width: calc(var(--u) * 6);
  }

  .sec04 .wrap .flow dd ol li+li .pict::before {
    bottom: auto;
    left: 0;
    margin: auto;
    right: 0;
    top: calc(var(--u) * -5.5);
    transform: rotate(90deg);
  }

  .sec04 .wrap .flow dd ol li p {
    color: #0066a1;
    font-size: calc(var(--u) * 1.8);
    font-weight: 700;
    line-height: 1.5;
    margin-top: calc(var(--u) * 2);
    position: relative;
    text-align: center;
    z-index: 2;
  }
}

/* ------------------------------------------
  sec05
------------------------------------------ */
.sec05 {
  position: relative;
}

.sec05::before,
.sec05::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  position: absolute;
}

.sec05::before {
  background-image: url(../img/lp01/05_deco01.png);
  height: calc(var(--u) * 14.5);
  right: calc(var(--u) * 34);
  top: calc(var(--u) * 12);
  width: calc(var(--u) * 24.6);
}

.sec05::after {
  background-image: url(../img/lp01/05_deco02.png);
  bottom: calc(var(--u) * 9);
  height: calc(var(--u) * 16.1);
  left: calc(var(--u) * 19);
  width: calc(var(--u) * 15.2);
}

.sec05 .wrap {
  margin: 0 auto;
  max-width: calc(var(--u) * 122);
  padding-bottom: calc(var(--u) * 40);
  padding-left: calc(var(--u) * 2);
  padding-right: calc(var(--u) * 2);
  padding-top: calc(var(--u) * 26);
  position: relative;
  z-index: 2;
}

/*
.sec05 .wrap h2 {
  display: flex;
  flex-direction: column;
  gap: calc(var(--u) * 2);
}

.sec05 .wrap h2 img {
  width: calc(var(--u) * 26.3);
}

.sec05 .wrap h2 span {
  color: #0066a1;
  font-family: 'Noto Serif JP';
  font-size: calc(var(--u) * 3.4);
  font-weight: 600;
}
*/

.sec05 .wrap h2{
  font-family: 'Noto Serif JP';
  font-size: calc(var(--u) * 3.4);
  color: #0066A1;
  text-align: center
}
/*

.sec05 .wrap p {
  color: #212121;
  font-size: calc(var(--u) * 1.8);
  font-weight: 700;
  line-height: 1.66;
  margin-top: calc(var(--u) * 1);
}
*/
.sec05 .wrap p {
  color: #212121;
  font-size: calc(var(--u) * 1.8);
  font-weight: 700;
  line-height: 1.66;
  margin-top: calc(var(--u) * 1);
  text-align: center
}

.sec05 .wrap .img {
  margin: calc(var(--u) * 2) auto 0;
  width: calc(var(--u) * 93.2);
}

@media screen and (max-width: 767px) {
  .sec05::before {
    height: calc(var(--u) * 14.5 * .8);
    right: calc(var(--u) * 14);
    top: calc(var(--u) * 4);
    width: calc(var(--u) * 24.6 * .8);
  }

  .sec05::after {
    bottom: calc(var(--u) * 0);
  }

  .sec05 .wrap {
    padding-bottom: calc(var(--u) * 16);
    padding-left: calc(var(--u) * 2);
    padding-right: calc(var(--u) * 2);
    padding-top: calc(var(--u) * 16);
  }

/*
  .sec05 .wrap h2 {
    align-items: center;
    gap: calc(var(--u) * 1);
  }
*/
  .sec05 .wrap h2{
  font-size: calc(var(--u) * 2.4);
    white-space: nowrap;
    text-align: left
}

  .sec05 .wrap h2 img {
    width: calc(var(--u) * 26.3 * .8);
  }

  .sec05 .wrap h2 span {
    font-size: calc(var(--u) * 2);
  }

  .sec05 .wrap p {
    font-size: calc(var(--u) * 1.6);
    text-align: left;
  }

  .sec05 .wrap .img {
    margin: calc(var(--u) * 4) auto 0;
    width: 100%;
  }
}

/* ------------------------------------------
  sec06
------------------------------------------ */
.sec06 {
  background-image: url(../img/lp01/06_bg.png);
  background-position: center top calc(var(--u) * -24.8);
  background-repeat: no-repeat;
  background-size: calc(var(--u) * 144);
  position: relative;
}

.sec06::before {
  background-image: url(../img/lp01/06_deco01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: calc(var(--u) * 15.9);
  position: absolute;
  right: calc(var(--u) * -7);
  top: calc(var(--u) * 2);
  width: calc(var(--u) * 13.6);
}

.sec06 .wrap {
  margin: 0 auto;
  max-width: calc(var(--u) * 122);
  padding-bottom: calc(var(--u) * 10);
  padding-left: calc(var(--u) * 2);
  padding-right: calc(var(--u) * 2);
  position: relative;
  z-index: 2;
}

.sec06 .wrap h2 {
  display: flex;
  flex-direction: column;
  gap: calc(var(--u) * 2);
}

.sec06 .wrap h2 img {
  width: calc(var(--u) * 24.8);
}

.sec06 .wrap h2 span {
  color: #0066a1;
  font-family: 'Noto Serif JP';
  font-size: calc(var(--u) * 3.4);
  font-weight: 600;
}

.sec06 .wrap .qa {
  margin: calc(var(--u) * 7) auto 0;
  max-width: calc(var(--u) * 97.2);
}

.sec06 .wrap .qa dl+dl {
  margin-top: calc(var(--u) * 4.4);
}

.sec06 .wrap .qa dl {
  background: #d9e7ef;
  border-radius: calc(var(--u) * .8);
}

.sec06 .wrap .qa dl dt {
  color: #0066a1;
  cursor: pointer;
  font-weight: 700;
  padding: calc(var(--u) * 3) calc(var(--u) * 6);
  position: relative;
}

.sec06 .wrap .qa dl dt span {
  background: #0066a1;
  border-radius: 100%;
  height: calc(var(--u) * 2.7);
  position: absolute;
  right: calc(var(--u) * 3);
  top: calc(var(--u) * 3.5);
  width: calc(var(--u) * 2.7);
}

.sec06 .wrap .qa dl dt span::before,
.sec06 .wrap .qa dl dt span::after {
  background: #fff;
  bottom: 0;
  content: '';
  height: calc(var(--u) * .2);
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  transition: .2s;
  width: calc(var(--u) * 1.6);
}

.sec06 .wrap .qa dl dt span::after {
  transform: rotate(90deg);
}

.sec06 .wrap .qa dl.open dt span::after {
  transform: rotate(0);
}

.sec06 .wrap .qa dl dt h3 {
  font-size: calc(var(--u) * 2);
  padding-left: calc(var(--u) * 4.3);
  position: relative;
}

.sec06 .wrap .qa dl dt h3::before {
  content: 'Q.';
  font-family: Poppins;
  font-size: calc(var(--u) * 3.15);
  left: 0;
  position: absolute;
  top: calc(var(--u) * -1);
  width: calc(var(--u) * 4.3);
  ;
}

.sec06 .wrap .qa dl dd {
  /* display: none; */
  padding: 0 calc(var(--u) * 6) calc(var(--u) * 3) calc(var(--u) * 6);
}

.sec06 .wrap .qa dl.open dd {
  display: block;
}

.sec06 .wrap .qa dl dd p {
  font-size: calc(var(--u) * 1.6);
  font-weight: 500;
  padding-left: calc(var(--u) * 4.3);
  position: relative;
}

.sec06 .wrap .qa dl dd p::before {
  content: 'A.';
  font-family: Poppins;
  font-size: calc(var(--u) * 2.4);
  font-weight: 700;
  left: 0;
  position: absolute;
  text-align: center;
  top: calc(var(--u) * -.8);
  width: calc(var(--u) * 4.3);
}

@media screen and (max-width: 767px) {
  .sec06 {
    background-position: left top calc(var(--u) * -24.8);
    background-size: calc(var(--u) * 100);
  }

  .sec06 .wrap h2 {
    align-items: center;
    gap: calc(var(--u) * 1);
  }

  .sec06 .wrap h2 img {
    width: calc(var(--u) * 24.8 * .8);
  }

  .sec06 .wrap h2 span {
    font-size: calc(var(--u) * 2);
  }

  .sec06 .wrap .qa {
    margin: calc(var(--u) * 5) auto 0;
  }

  .sec06 .wrap .qa dl+dl {
    margin-top: calc(var(--u) * 3);
  }

  .sec06 .wrap .qa dl {
    border-radius: calc(var(--u) * .4);
  }

  .sec06 .wrap .qa dl dt {
    padding: calc(var(--u) * 2) calc(var(--u) * 4) calc(var(--u) * 2) calc(var(--u) * 1);
  }

  .sec06 .wrap .qa dl dt span {
    bottom: 0;
    height: calc(var(--u) * 2.3);
    margin: auto;
    right: calc(var(--u) * 1);
    top: 0;
    width: calc(var(--u) * 2.3);
  }

  .sec06 .wrap .qa dl dt span::before,
  .sec06 .wrap .qa dl dt span::after {
    width: calc(var(--u) * 1.2);
  }

  .sec06 .wrap .qa dl dt h3 {
    font-size: calc(var(--u) * 1.6);
    padding-left: calc(var(--u) * 3);
    position: relative;
  }

  .sec06 .wrap .qa dl dt h3::before {
    font-family: Poppins;
    font-size: calc(var(--u) * 2.5);
    top: calc(var(--u) * -1);
    width: calc(var(--u) * 2);
    ;
  }

  .sec06 .wrap .qa dl dd {
    padding: 0 calc(var(--u) * 1) calc(var(--u) * 2) calc(var(--u) * 1);
  }

  .sec06 .wrap .qa dl dd p {
    font-size: calc(var(--u) * 1.4);
    font-weight: 500;
    padding-left: calc(var(--u) * 3);
    position: relative;
  }

  .sec06 .wrap .qa dl dd p::before {
    font-size: calc(var(--u) * 2.5);
    top: calc(var(--u) * -1.2);
    width: calc(var(--u) * 2);
  }
}

/* ------------------------------------------
  sec07
------------------------------------------ */
.sec07-sec08 {
  background-image: url(../img/lp01/07-08_bg.png);
  background-position: center top calc(var(--u) * 8);
  background-repeat: no-repeat;
  background-size: calc(var(--u) * 144);
}

.sec07 {
  position: relative;
}

.sec07::before {
  background-image: url(../img/lp01/07_deco01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: calc(var(--u) * 16);
  left: calc(var(--u) * 30);
  position: absolute;
  top: calc(var(--u) * -1);
  width: calc(var(--u) * 15.45);
}

.sec07 .wrap {
  margin: 0 auto;
  max-width: calc(var(--u) * 122);
  padding-bottom: calc(var(--u) * 16);
  padding-left: calc(var(--u) * 2);
  padding-right: calc(var(--u) * 2);
  padding-top: calc(var(--u) * 20);
  position: relative;
  z-index: 2;
}

.sec07 .wrap .bnr {
  align-items: center;
  background: #d6e3ea;
  display: flex;
  justify-content: center;
  padding: calc(var(--u) * 7) calc(var(--u) * 2);
}

.sec07 .wrap .bnr .pict {
  margin-right: calc(var(--u) * 3.5);
  width: calc(var(--u) * 15.4);
}

.sec07 .wrap .bnr p {
  font-size: calc(var(--u) * 2.5);
  font-weight: 700;
  margin-right: calc(var(--u) * 6);
  width: calc(var(--u) * 35);
}

.sec07 .wrap .bnr .btn {
  align-items: center;
  background: #0066a1;
  border-radius: 100vh;
  color: #fff;
  display: flex;
  font-size: calc(var(--u) * 2.2);
  font-weight: 700;
  height: calc(var(--u) * 8.8);
  justify-content: center;
  position: relative;
  width: calc(var(--u) * 37.6);
}

.sec07 .wrap .bnr .btn::after {
  background-image: url(../img/lp01/arrow03.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: '';
  height: calc(var(--u) * 1.15);
  margin: auto;
  position: absolute;
  right: calc(var(--u) * 3.5);
  top: 0;
  width: calc(var(--u) * .85);
}

@media screen and (max-width: 767px) {
  .sec07-sec08 {
    background-position: center top calc(var(--u) * 2);
    background-size: cover;
  }

  .sec07::before {
    left: calc(var(--u) * 27);
    top: calc(var(--u) * -8);
    width: calc(var(--u) * 15.45 * .9);
  }

  .sec07 .wrap {
    padding-bottom: calc(var(--u) * 10);
    padding-top: 0;
  }

  .sec07 .wrap .bnr {
    flex-direction: column;
    gap: calc(var(--u) * 2);
    padding: calc(var(--u) * 4) calc(var(--u) * 4);
  }

  .sec07 .wrap .bnr .pict {
    margin-right: 0;
    width: calc(var(--u) * 12);
  }

  .sec07 .wrap .bnr p {
    font-size: calc(var(--u) * 1.8);
    margin-right: 0;
    text-align: center;
    white-space: nowrap;
    width: 100%;
  }

  .sec07 .wrap .bnr .btn {
    font-size: calc(var(--u) * 2);
    height: calc(var(--u) * 6);
    width: 100%;
  }
}

/* ------------------------------------------
  sec08
------------------------------------------ */
.sec08 {
  position: relative;
}

.sec08 .wrap {
  padding-bottom: calc(var(--u) * 12);
  /* padding-left: calc(var(--u) * 2);
  padding-right: calc(var(--u) * 2); */
}

.sec08 .wrap .head {
  background-attachment: fixed;
  background-image: url(../img/lp01/08_bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  height: calc(var(--u) * 35.8);
  padding-top: calc(var(--u) * 9.3);
  text-align: center;
}

.sec08 .wrap .head h2 {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: calc(var(--u) * 1);
}

.sec08 .wrap .head h2 .eng {
  font-family: Poppins;
  font-size: calc(var(--u) * 5.7);
  font-weight: 700;
  line-height: 1;
}

.sec08 .wrap .head h2 .jp {
  font-size: calc(var(--u) * 2.3);
}

.sec08 .wrap .box {
  margin: calc(var(--u) * -13) auto 0;
  max-width: calc(var(--u) * 80);
  padding-left: calc(var(--u) * 2);
  padding-right: calc(var(--u) * 2);
}

.sec08 .wrap .box .g_map {
  height: calc(var(--u) * 37.1);
}

.sec08 .wrap .box .g_map iframe {
  height: 100%;
  width: 100%;
}

.sec08 .wrap .box .company {
  margin-top: calc(var(--u) * 2);
}

.sec08 .wrap .box .company h3 {
  align-items: center;
  display: flex;
  font-size: calc(var(--u) * 2);
  font-weight: 700;
  gap: calc(var(--u) * 1.2);
}

.sec08 .wrap .box .company h3::before {
  background-image: url(../img/lp01/08_logo01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: '';
  height: calc(var(--u) * 4.45);
  width: calc(var(--u) * 3.65);
}

.sec08 .wrap .box .company .info {
  display: flex;
  margin-top: calc(var(--u) * 1);
}

.sec08 .wrap .box .company .info .dls {
  width: 50%;
}

.sec08 .wrap .box .company .info .dls dl {
  display: flex;
  font-size: calc(var(--u) * 1.6);
  gap: calc(var(--u) * 1.2);
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .sec08 .wrap {
    padding-bottom: calc(var(--u) * 10);
  }

  .sec08 .wrap .head {
    /* background-attachment: fixed;; */
    padding-top: calc(var(--u) * 8);
  }

  .sec08 .wrap .head h2 .eng {
    font-size: calc(var(--u) * 5.7 * .8);
  }

  .sec08 .wrap .head h2 .jp {
    font-size: calc(var(--u) * 2);
  }

  .sec08 .wrap .box .company h3 {
    font-size: calc(var(--u) * 2);
    justify-content: center;
  }

  .sec08 .wrap .box .company .info {
    display: block;
  }

  .sec08 .wrap .box .company .info .dls {
    width: 100%;
  }

  .sec08 .wrap .box .company .info .dls dl {
    line-height: 2;
  }
}

/* ------------------------------------------
  sec09
------------------------------------------ */
.sec09 {
  background-image: url(../img/lp01/09_bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.sec09 .wrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding-bottom: calc(var(--u) * 10);
  padding-left: calc(var(--u) * 4);
  padding-right: calc(var(--u) * 4);
  padding-top: calc(var(--u) * 15);
}

.sec09 .wrap h2 {
  color: #fff;
  font-size: calc(var(--u) * 3.5);
  font-weight: 700;
  text-align: center;
}

.sec09 .wrap .btn {
  align-items: center;
  background: rgba(0, 102, 161, .8);
  border-radius: 100vh;
  color: #fff;
  display: flex;
  font-size: calc(var(--u) * 2.2);
  font-weight: 700;
  height: calc(var(--u) * 8.8);
  justify-content: center;
  margin-top: calc(var(--u) * 4);
  opacity: .8;
  position: relative;
  width: calc(var(--u) * 32.6);
}

.sec09 .wrap .btn::after {
  background-image: url(../img/lp01/arrow03.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0;
  content: '';
  height: calc(var(--u) * 1.15);
  margin: auto;
  position: absolute;
  right: calc(var(--u) * 3.5);
  top: 0;
  width: calc(var(--u) * .85);
}

.sec09 .wrap .btn:hover {
  opacity: .6;
}

@media screen and (max-width: 767px) {
  .sec09 {
    background-image: url(../img/lp01/09_bg.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
  }

  .sec09 .wrap {
    padding-bottom: calc(var(--u) * 10);
    padding-top: calc(var(--u) * 8);
  }

  .sec09 .wrap h2 {
    font-size: calc(var(--u) * 2.4);
  }

  .sec09 .wrap .btn {
    font-size: calc(var(--u) * 2);
    height: calc(var(--u) * 6);
    width: 100%;
  }
}

/* ------------------------------------------
  zz
------------------------------------------ */
.zz {
  font-size: calc(var(--u) * 00);
}