@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&?family=Jost:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;600;700;900&display=swap");

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  /*scroll-behavior: smooth;*/
}

body {
  margin: 0;
  background-color: #D8F1FF;
  color: #263142;
  font-size: 14px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5;
  overflow-x: hidden;
  position: relative;
}

@media screen and (min-width: 768px) {
  body {
    font-size: 16px;
  }
}

main {
  margin-top: 50px;
}

@media screen and (min-width: 1024px) {
  main {
    margin-top: 100px;
  }
}

section {
  width: 100%;
  position: relative;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
  color: currentColor;
  text-decoration: none;
  cursor: pointer;
  transition: 0.3s;
}

a:hover {
  outline-width: 0;
  text-decoration: none;
  opacity: 0.8;
}

a.underline {
  text-decoration: underline;
}

a.underline:hover {
  text-decoration: none;
}

a::before,
a::after {
  transition: 0.3s;
}

img {
  max-width: 100%;
  height: auto;
  border-style: none;
  -o-object-fit: contain;
  object-fit: contain;
}

img.block {
  width: 100%;
  display: block;
}

img.fit {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
}

em {
  font-style: normal;
}

strong {
  font-weight: 700;
}

/* ============= common class ================ */
.disp_none {
  display: none;
}

@media screen and (min-width: 576px) {
  .disp_xs {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .disp_tab {
    display: none !important;
  }

  .disp_pc {
    display: none !important;
  }

  .disp_notsp {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .disp_sp {
    display: none !important;
  }

  .disp_pc {
    display: none !important;
  }
}

@media screen and (max-width: 1023px) {
  .disp_lg {
    display: none !important;
  }
}

@media screen and (min-width: 1024px) {
  .disp_sp {
    display: none !important;
  }

  .disp_tab {
    display: none !important;
  }

  .disp_notpc {
    display: none !important;
  }
}

@media screen and (max-width: 1199px) {
  .disp_xl {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .disp_lg {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .disp_un1200 {
    display: none !important;
  }
}

@media screen and (max-width: 1199px) {
  .disp_ov1200 {
    display: none !important;
  }
}


.en {
  font-family: "Jost", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.serif {
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.bold {
  font-weight: 700;
}

.txt--main {
  color: #008EC9;
}

.txt--orange {
  color: #FF4800;
}

.txt--navy {
  color: #2A3B6F;
}

.txt--yellow {
  color: #FFF600;
}

.txt--ac {
  color: #FF0080;
}

.txtCenter {
  text-align: center;
}

.txtNowrap {
  white-space: nowrap;
}

.marker--white {
  background: linear-gradient(transparent 60%, #fff 60%);
}

.marker--yellow {
  background: linear-gradient(transparent 60%, #FFF600 60%);
}

.overDot {
  position: relative;
}

.overDot::before {
  line-height: 1;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -55%);
}

.js-txtEdge {
  white-space: nowrap;
  position: relative;
  z-index: 1;
}

.js-txtEdge .edge {
  width: 100%;
  color: transparent;
  -webkit-text-stroke-color: #fff;
  white-space: nowrap;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  transform: translate(-50%, -50%);
}

.js-txtEdge--yellow .edge {
  -webkit-text-stroke-color: #FFF600;
}

.js-txtEdge--stroke_1px .edge {
  -webkit-text-stroke-width: 2px;
}

.js-txtEdge--stroke_2px .edge {
  -webkit-text-stroke-width: 4px;
}

.js-txtEdge--stroke_3px .edge {
  -webkit-text-stroke-width: 6px;
}

/* ============= common parts ================ */
.inner {
  width: calc(100% - 20px);
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .inner {
    width: calc(100% - 40px);
    max-width: 1200px;
  }
}

.btn {
  width: 100%;
  max-width: 220px;
  height: 40px;
  padding: 0 16px;
  background-color: #fff;
  border: 1px solid #263142;
  border-radius: 30px;
  color: #263142;
  font-size: 16px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.btn::before {
  content: "";
  width: 28.5px;
  height: 4px;
  background: url('data:image/svg+xml;charset=utf8,<svg width="29" height="4" viewBox="0 0 29 4" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M3.76607 2.93945C3.4297 3.57049 2.76501 4 2 4C0.895431 4 0 3.10457 0 2C0 0.895431 0.895431 0 2 0C3.08432 0 3.96709 0.862893 3.9991 1.93945H28C28.2761 1.93945 28.5 2.16331 28.5 2.43945C28.5 2.7156 28.2761 2.93945 28 2.93945H3.76607Z" fill="%23263142"/></svg>') center/contain no-repeat;
  display: block;
}

.btn:hover {
  background-color: #263142;
  color: #fff;
  opacity: 1;
}

.btn:hover::before {
  background-image: url('data:image/svg+xml;charset=utf8,<svg width="29" height="4" viewBox="0 0 29 4" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M3.76607 2.93945C3.4297 3.57049 2.76501 4 2 4C0.895431 4 0 3.10457 0 2C0 0.895431 0.895431 0 2 0C3.08432 0 3.96709 0.862893 3.9991 1.93945H28C28.2761 1.93945 28.5 2.16331 28.5 2.43945C28.5 2.7156 28.2761 2.93945 28 2.93945H3.76607Z" fill="%23fff"/></svg>');
}

.icon {
  flex-shrink: 0;
}

.ctaBtn {
  width: 100%;
  color: #fff;
  font-weight: 700;
  line-height: 1.6;
  display: flex;
  align-items: center;
}

.ctaBtn-Tel {
  background: linear-gradient(180deg, #FF0080 0%, #99004D 100%);
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}

.ctaBtn-Tel__number {
  font-size: 32px;
  font-weight: 600;
  display: flex;
  align-items: center;
  grid-gap: 8px;
}

.ctaBtn-Tel__number .icon {
  width: 50px;
}

.ctaBtn-Tel__txt {
  width: 100%;
  font-size: 12px;
  display: block;
}

.ctaBtn-Mail {
  background: linear-gradient(180deg, #00E271 0%, #008B46 100%);
  font-size: 20px;
  display: flex;
  align-items: center;
  grid-gap: 12px;
  justify-content: center;
}

.ctaBtn-Mail .icon {
  width: 50px;
}

.ctaBtn-Mail__txt {
  white-space: nowrap;
}

.ctaBtn__fukidashi {
  width: 182px;
  position: absolute;
  top: -34px;
  left: 50%;
  transform: translateX(-50%);
}

/*------------------------------------------------------
    header
-------------------------------------------------------*/
.header {
  width: 100%;
  height: 50px;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1041;
}

@media screen and (min-width: 1024px) {
  .header {
    height: 100px;
  }
}

.header__inner {
  max-width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  column-gap: 3%;
}

@media screen and (min-width: 1024px) {
  .header__inner {
    width: calc(100% - 32px);
    max-width: 1920px;
    column-gap: 20px;
  }
}

.header__sitelogo {
  width: 100%;
  max-width: 151px;
  height: 100%;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .header__sitelogo {
    max-width: 240px;
    padding-left: 6px;
  }
}

@media screen and (min-width: 1200px) {
  .header__sitelogo {
    max-width: 262px;
  }
}

.header__btnWrap {
  display: flex;
  align-items: center;
  margin-right: 0;
  margin-left: auto;
}

@media screen and (max-width: 767px) {
  .header__btnWrap {
    gap: 1vw;
  }

  .header__btn.ctaBtn {
    display: block;
    aspect-ratio: 1/1;
    padding: 1vw;
    align-content: center;
    height: max-content;
  }

  .header__btn.ctaBtn img.icon {
    width: clamp(0px,9vw,40px);
    height: auto;
  }

  .header__btnWrap_opentime {
    font-size: 10px;
    font-weight: 500;
    line-height: 1.4;
  }
}

@media screen and (min-width: 768px) {
  .header__btnWrap {
    grid-gap: 3px;
    margin-right: 0;
    margin-left: auto;
  }

  .header__btnWrap .ctaBtn {
    width: 188px;
    height: 45px;
  }

  .header__btnWrap .ctaBtn-Tel {
    padding: 0 9px 4px;
  }

  .header__btnWrap .ctaBtn-Tel__number {
    font-size: 20px;
    grid-gap: 3px;
  }

  .header__btnWrap .ctaBtn-Tel__number .icon {
    width: 27px;
  }

  .header__btnWrap .ctaBtn-Tel__txt {
    line-height: 1;
    text-align: center;
  }

  .header__btnWrap .ctaBtn-Mail {
    font-size: 14px;
    line-height: 1.4;
    grid-gap: 14px;
  }

  .header__btnWrap .ctaBtn-Mail .icon {
    width: 35px;
  }
}

@media screen and (min-width: 1024px) {
  .header__btnWrap .ctaBtn {
    height: 60px;
  }

  .header__btnWrap .ctaBtn-Tel {
    padding: 0 9px;
  }
}

.header__nav {
  margin-right: 0px;
  margin-left: auto;
}

@media screen and (max-width: 1199px) {
  .header__nav {
    transform: rotateY(0) translateY(-100%);
    visibility: hidden;
    flex-direction: column;
    position: fixed;
    justify-content: center;
    top: 100px;
    left: 0;
    right: 0;
    margin: auto;
    width: 100vw;
    height: calc(100svh - 100px);
    background-color: #263142;
    color: #fff;
    z-index: -1;
    transition: all ease .5s;
    opacity: 0;
    overflow: auto;
    padding-bottom: 80px;
  }

  .header__nav.active {
    visibility: visible;
    transform: scaleY(1) translateY(0);
    opacity: 1;
  }
}

@media screen and (max-width: 1023px) {
  .header__nav {
    top: 50px;
    height: calc(100svh - 50px)
  }
}

.header__nav__lists {
  display: flex;
  flex-wrap: wrap;
  grid-row-gap: 5px;
  max-width: 700px;
}

.header__nav__item {
  padding: 0 0.9em;
  border-right: solid 2px #000;
  font-weight: bold;
  font-size: min(1.1vw, 14px);
}

.header__nav__item:last-of-type {
  border-right: none;
}

@media screen and (max-width: 1199px) {
  .header__nav__lists {
    flex-direction: column;
    align-items: center;
    max-width: 90%;
    margin: 100px auto 0;
    grid-row-gap: 1em;
  }

  .header__nav__item {
    border-right: none;
    font-size: 20px;
  }
}

@media screen and (max-width:767px) {
  .header__nav__lists {
    margin-top: 5svh;
  }
}

.menu_toggle {
  flex-shrink: 0;
  position: relative;
  top: 0;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  display: flex;
  flex-direction: column;
  grid-row-gap: 5px;
  cursor: pointer;
  align-items: center;
  justify-content: center;
}

.menu_toggle__line {
  background-color: #124CB2;
  display: block;
  width: 100%;
  height: 4px;
  transform-origin: center;
  transition: all ease .5s;
}

.menu_toggle__line--1.active {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(45deg);
}

.menu_toggle__line--2.active {
  opacity: 0;
}

.menu_toggle__line--3.active {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  transform: rotate(-45deg);
}

/*------------------------------------------------------
    footer
-------------------------------------------------------*/
.footer {
  padding: 46px 0 60px;
  background-color: #263142;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .footer {
    padding: 66px 0 60px;
  }
}

.footer__row {
  margin-bottom: 46px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  grid-gap: 45px;
}

@media screen and (min-width: 768px) {
  .footer__row {
    margin-bottom: 40px;
    flex-direction: row;
  }
}

@media screen and (min-width: 1024px) {
  .footer__row {
    grid-gap: 64px;
  }
}

.footer__row_col {
  width: 100%;
  display: flex;
  flex-direction: column;
  grid-gap: 27px;
}

@media screen and (min-width: 768px) {
  .footer__row_col {
    width: 50%;
    grid-gap: 38px;
  }
}

.footer__makerBlk_ttl {
  margin-bottom: 11px;
  font-size: 18px;
  font-weight: 700;
  line-height: 2;
}

.footer__makerBlk_txt {
  line-height: 2;
}

.footer__makerBlk_makerList {
  padding: 8px 0 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 15px;
}

.footer__makerBlk_makerList_img {
  width: 100%;
  margin-bottom: 8px;
  display: block;
}

@media screen and (min-width: 768px) {
  .footer__makerBlk_ttl {
    font-size: 20px;
  }

  .footer__makerBlk_makerList {
    max-width: 356px;
    padding: 0;
    margin: -4px 0 0;
  }
}

.footer__navBlk {
  width: 100%;
}

.footer__navBlk_menuList {
  width: 100%;
  font-size: 18px;
  font-weight: 700;
  display: grid;
  grid-gap: 16px 0;
}

@media screen and (min-width: 768px) {
  .footer__navBlk {
    padding: 6px 0 0;
  }

  .footer__navBlk_menuList {
    font-size: 20px;
    display: flex;
    flex-wrap: wrap;
    grid-gap: 26px 32px;
  }
}

.footer__copyright {
  width: 100%;
  margin-bottom: 27px;
  font-size: 12px;
  line-height: 2.4;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .footer__copyright {
    margin-bottom: 24px;
  }
}

.footer__btnWrap {
  width: calc(100% + 20px);
  max-width: 375px;
  display: flex;
  align-items: center;
  grid-gap: 3px;
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1042;
}

.footer__btnWrap .ctaBtn {
  width: 100%;
  height: 60px;
}

.footer__btnWrap .ctaBtn-Tel {
  padding: 0 9px 4px;
}

.footer__btnWrap .ctaBtn-Tel__number {
  font-size: 20px;
  grid-gap: 14px;
}

.footer__btnWrap .ctaBtn-Tel__number .icon {
  width: 40px;
}

.footer__btnWrap .ctaBtn-Tel__txt {
  font-size: 14px;
}

.footer__btnWrap .ctaBtn-Mail {
  font-size: 14px;
  line-height: 1.4;
  grid-gap: 14px;
}

.footer__btnWrap .ctaBtn-Mail .icon {
  width: 32px;
}

@media screen and (min-width: 768px) {
  .footer__btnWrap {
    position: relative;
    z-index: 1039;
  }
}

@media screen and (min-width: 1024px) {
  .footer__btnWrap .ctaBtn {
    height: 60px;
  }

  .footer__btnWrap .ctaBtn-Tel {
    padding: 0 9px;
  }
}

/*------------------------------------------------------
    contents
-------------------------------------------------------*/
.pageTtlBlk {
  width: 100%;
  padding: 40px 0 32px;
  color: #008EC9;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .pageTtlBlk {
    padding: 60px 0 40px;
    text-align: center;
  }
}

@media screen and (min-width: 1024px) {
  .pageTtlBlk {
    padding: 80px 0 64px;
  }
}

.secTtl {
  width: 100%;
  height: 97px;
  padding: 0 0 17px;
  background-color: #fff;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 17px), calc(50% + 16px) calc(100% - 17px), 50% 100%, calc(50% - 16px) calc(100% - 17px), 0 calc(100% - 17px));
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 17px), calc(50% + 16px) calc(100% - 17px), 50% 100%, calc(50% - 16px) calc(100% - 17px), 0 calc(100% - 17px));
  color: #008EC9;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.secTtl strong {
  font-size: 24px;
}

@media screen and (min-width: 768px) {
  .secTtl {
    height: 133px;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 23px), calc(50% + 22px) calc(100% - 23px), 50% 100%, calc(50% - 22px) calc(100% - 23px), 0 calc(100% - 23px));
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 23px), calc(50% + 22px) calc(100% - 23px), 50% 100%, calc(50% - 22px) calc(100% - 23px), 0 calc(100% - 23px));
    font-size: 20px;
  }

  .secTtl strong {
    font-size: 32px;
  }
}

.ctaBox {
  width: 100%;
  padding: 0 0 45px;
  background-image: linear-gradient(180deg, transparent 0%, #D8F1FF 198px, transparent 198px), url(../images/cta_bg.jpg), linear-gradient(180deg, transparent 50%, #D8F1FF 50%);
  background-position: center top 322px, left 77% top 33px, bottom;
  background-size: 100%, 778px, 100%;
  background-repeat: no-repeat;
  position: relative;
}

@media screen and (min-width: 768px) {
  .ctaBox {
    padding: 0 0 80px;
    background-image: linear-gradient(180deg, transparent calc(100% - 197px), #D8F1FF 100%), url(../images/cta_bg.jpg);
    background-position: bottom, center top 61px;
    background-size: 100%, cover;
  }
}

.ctaBox__inner {
  position: relative;
  z-index: 1;
}

.ctaBox__ttl {
  padding-left: 103px;
  margin-bottom: 157px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  z-index: 1;
}

.ctaBox__ttl_txt {
  padding: 7px 17px 0 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  grid-gap: 8px;
  transform: rotate(4deg);
}

.ctaBox__ttl_txt .ttl01 {
  width: 151px;
  padding-left: 3px;
}

.ctaBox__ttl_txt .ttl02 {
  width: 235px;
}

@media screen and (min-width: 400px) {
  .ctaBox__ttl {
    width: calc(100% + 50vw - 200px);
  }
}

@media screen and (min-width: 768px) {
  .ctaBox__ttl {
    width: 50%;
    padding-left: 35px;
    margin: 0 0 62px auto;
  }

  .ctaBox__ttl_txt {
    padding: 44px 17px 0 0;
    flex-direction: row;
    grid-gap: 8px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .ctaBox__ttl_txt {
    padding-top: 50px;
  }

  .ctaBox__ttl_txt .ttl01 {
    width: 130px;
    padding-left: 3px;
  }

  .ctaBox__ttl_txt .ttl02 {
    width: 195px;
  }
}

@media screen and (min-width: 1024px) {
  .ctaBox__ttl {
    padding-left: 74px;
  }
}

.ctaBox__ttl_bg {
  width: calc(100% - 46px);
  height: 114px;
  background-color: #FFF600;
  -webkit-clip-path: polygon(0 0, 100% 33%, 100% 90%, 9% 73%);
  clip-path: polygon(0 0, 100% 33%, 100% 90%, 9% 73%);
  display: block;
  position: absolute;
  top: 0;
  right: -10px;
  z-index: -1;
}

.ctaBox__ttl_bg--shadow {
  background-color: rgba(38, 49, 66, 0.7);
  transform: translate(8px, 8px);
}

@media screen and (min-width: 768px) {
  .ctaBox__ttl_bg {
    width: calc(100% + 20px);
    -webkit-clip-path: polygon(0 0, 100% 52%, 100% 100%, 7% 73%);
    clip-path: polygon(0 0, 100% 52%, 100% 100%, 7% 73%);
    right: -20px;
  }
}

@media screen and (min-width: 1240px) {
  .ctaBox__ttl_bg {
    width: calc(100% + 50vw - 600px);
    right: calc((50vw - 600px) * -1);
  }
}

.ctaBox__subTtl {
  width: 100%;
  max-width: 266px;
  margin: 0 auto -47px;
}

@media screen and (min-width: 768px) {
  .ctaBox__subTtl {
    max-width: 410px;
    margin-bottom: -66px;
  }
}

.ctaBox__inquiryList {
  width: 100%;
  max-width: 317px;
  margin: 0 auto 21px;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.6;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.ctaBox__inquiryList li {
  padding: 0 0.57em;
  background-color: #263142;
  border-radius: 2em;
}

@media screen and (min-width: 768px) {
  .ctaBox__inquiryList {
    max-width: 538px;
    margin-bottom: 23px;
    font-size: 24px;
  }
}

.ctaBox__btnsWrap {
  width: 100%;
  padding: 34px 13px 0;
  display: flex;
  flex-direction: column;
  grid-gap: 46px;
}

@media screen and (min-width: 768px) {
  .ctaBox__btnsWrap {
    max-width: 680px;
    padding: 34px 0 0;
    margin: 0 auto;
    flex-direction: row;
    grid-gap: 20px;
  }
}

.ctaBox__btn {
  padding: 0 24px;
  box-shadow: 4px 4px 2px rgba(38, 49, 66, 0.4);
  position: relative;
}

.ctaBox .ctaBtn-Tel {
  height: 110px;
  padding-top: 21px;
  padding-bottom: 10px;
}

.ctaBox .ctaBtn-Tel__number {
  margin-top: 7px;
}

.ctaBox .ctaBtn-Tel__number_telnumber {
  line-height: 1;
  display: block;
}

.ctaBox .ctaBtn-Mail {
  height: 70px;
}

@media screen and (min-width: 768px) {
  .ctaBox .ctaBtn-Mail {
    height: 110px;
  }
}

/*------------------------------------------------------
  section
-------------------------------------------------------*/
.secIntro {
  padding: 27px 0 37px;
  background: url(../images/intro_bg.jpg) right bottom/620px no-repeat;
}

@media screen and (min-width: 768px) {
  .secIntro {
    padding: 80px 0;
    background-size: cover;
  }
}

.secIntro__ttl {
  margin-bottom: 22px;
  color: #008EC9;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .secIntro__ttl {
    margin-bottom: 30px;
    font-size: 32px;
  }
}

.secIntro__list {
  padding: 0 27px;
  margin-bottom: 24px;
  color: #2B549A;
  display: grid;
  grid-gap: 33px;
  counter-reset: intro_list 0;
}

@media screen and (min-width: 768px) {
  .secIntro__list {
    max-width: 420px;
    margin: 0 auto 24px;
  }
}

@media screen and (min-width: 1024px) {
  .secIntro__list {
    max-width: 100%;
    padding: 0 0 0 10px;
    margin: 0 0 35px;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 30px;
  }
}

.secIntro__listItem {
  padding: 9px 10px 0;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  position: relative;
}

.secIntro__listItem::after {
  content: "";
  width: 100%;
  height: 34px;
  background: url(../images/intro_shadow.png) center top/contain no-repeat;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(0, 100%);
}

.secIntro__listItem_ttl {
  width: 100%;
  padding: 0 0 5px 40px;
  margin: 0 0 -10px -10px;
  border-bottom: 1px solid #2B549A;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  position: relative;
}

.secIntro__listItem_ttl::before {
  counter-increment: intro_list 1;
  content: counter(intro_list, decimal-leading-zero);
  width: 37px;
  height: 37px;
  background-color: #2B549A;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: -1px;
  left: -10px;
}

.secIntro__listItem_ttl strong {
  font-size: 20px;
}

.secIntro__listItem_row {
  width: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

.secIntro__listItem_txt {
  padding: 4px 0 0 10px;
  font-weight: 700;
  line-height: 1.6;
  display: flex;
  align-items: center;
  align-self: stretch;
}

.secIntro__listItem_img {
  width: 188px;
  margin: -2px -29px 0 -50px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 1024px) {
  .secIntro__listItem {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }

  .secIntro__listItem:nth-child(2) .secIntro__listItem_img {
    margin: -8px -40px 0 -60px;
  }

  .secIntro__listItem_txt {
    font-size: 14px;
  }

  .secIntro__listItem_img {
    width: 160px;
  }
}

@media screen and (min-width: 1200px) {
  .secIntro__listItem:nth-child(2) .secIntro__listItem_img {
    margin: -2px -30px 0 -60px;
  }

  .secIntro__listItem_txt {
    font-size: 16px;
  }

  .secIntro__listItem_img {
    width: 188px;
  }
}

@media screen and (min-width: 1440px) {
  .secIntro__listItem:nth-child(2) .secIntro__listItem_img {
    margin: -2px -11px 0 -60px;
  }
}

.secIntro__txt {
  color: #2B549A;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.secStrength {
  background-color: #fff;
}

.secStrength__txtBlk {
  padding-bottom: 93px;
  margin-bottom: -33px;
  background: linear-gradient(180deg, #76A8C5 0%, transparent 100%);
}

@media screen and (min-width: 768px) {
  .secStrength__txtBlk {
    padding-bottom: 82px;
    margin-bottom: -62px;
  }
}

.secStrength__ttl {
  margin-bottom: 7px;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .secStrength__ttl {
    margin-bottom: 20px;
    flex-direction: row;
  }
}

.secStrength__row {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

@media screen and (min-width: 768px) {
  .secStrength__row {
    max-width: 927px;
    margin: 0 auto;
    flex-direction: row;
    align-items: center;
    grid-gap: 20px;
  }
}

@media screen and (min-width: 1024px) {
  .secStrength__row {
    grid-gap: 64px;
  }
}

.secStrength__row_img {
  width: calc(100% + 20px);
  margin: 0 -10px 23px;
}

@media screen and (min-width: 768px) {
  .secStrength__row_img {
    width: 100%;
    margin: 0;
  }
}

.secStrength__row_txtWrap {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .secStrength__row_txtWrap {
    width: 50%;
    max-width: 430px;
    flex-shrink: 0;
  }
}

.secStrength__row_box {
  width: 100%;
  padding: 30px 0;
  border: 1px solid #263142;
  background-color: rgba(255, 255, 255, 0.2);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.secStrength__row_box_ttl {
  margin-bottom: 8px;
  color: #008EC9;
  font-size: 18px;
  font-weight: 700;
  position: relative;
}

.secStrength__row_box_ttl strong {
  font-size: 22px;
}

.secStrength__row_box_ttl .fukidashi {
  padding: 1px 12px 6px;
  background-color: #FF4800;
  border-radius: 5px;
  color: #fff;
  font-size: 16px;
  display: block;
  position: absolute;
  top: -46px;
  left: 50%;
  transform: translateX(-50%);
}

.secStrength__row_box_ttl .fukidashi::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 7px solid #FF4800;
  border-right: 3px solid transparent;
  border-left: 3px solid transparent;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
}

.secStrength__row_box_txt {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .secStrength__row_box {
    height: 300px;
    padding-top: 82px;
    justify-content: center;
  }

  .secStrength__row_box .fukidashi {
    padding: 2px 17px 6px;
    font-size: 18px;
    top: -52px;
  }

  .secStrength__row_box_txt {
    font-size: 18px;
  }
}

.secWorry {
  padding: 55px 0 0;
  background: url(../images/worry_bg1.jpg) center/cover no-repeat;
}

.secWorry__inner {
  padding: 31px 0 0 13px;
  z-index: 1;
}

.secWorry__inner::before {
  content: "";
  width: calc(100% + 10px);
  height: 100%;
  background: url(../images/worry_bg2.jpg) center/cover no-repeat;
  -webkit-clip-path: polygon(38px 0, 100% 0, 100% 100%, 0 100%, 0 38px);
  clip-path: polygon(38px 0, 100% 0, 100% 100%, 0 100%, 0 38px);
  position: absolute;
  bottom: 0;
  right: -10px;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .secWorry__inner {
    padding: 34px 20px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .secWorry__inner::before {
    width: calc(100% + 20px);
    -webkit-clip-path: polygon(58px 0, 100% 0, 100% 100%, 0 100%, 0 58px);
    clip-path: polygon(58px 0, 100% 0, 100% 100%, 0 100%, 0 58px);
    right: -20px;
  }
}

@media screen and (min-width: 1240px) {
  .secWorry__inner::before {
    width: calc(100% + 50vw - 600px);
    right: calc(-1 * (50vw - 600px));
  }
}

@media screen and (min-width: 1440px) {
  .secWorry__inner::before {
    width: calc(100% + 58px + 50vw - 600px);
    right: auto;
    left: -58px;
  }
}

.secWorry__ttl {
  padding: 0 0 0 5px;
  margin-bottom: 16px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
}

.secWorry__ttl strong {
  background-color: #2A3B6F;
  color: #fff;
  line-height: 1;
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .secWorry__ttl {
    margin-bottom: 24px;
    font-size: 28px;
  }
}

@media screen and (min-width: 1024px) {
  .secWorry__ttl {
    font-size: 32px;
  }
}

.secWorry__list {
  width: 100%;
  margin: 0 0 10px 0;
  display: grid;
  grid-gap: 10px;
}

.secWorry__list li {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  display: flex;
  align-items: center;
  grid-gap: 18px;
}

.secWorry__list li::before {
  content: "";
  width: 28px;
  height: 28px;
  background: url(../images/worry_listicon.png) center/contain no-repeat;
  display: block;
  flex-shrink: 0;
}

.secWorry__list li strong {
  font-size: 18px;
}

@media screen and (min-width: 768px) {
  .secWorry__list {
    width: auto;
  }
}

.secWorry__img {
  width: 100%;
  max-width: 275px;
  margin: 0 auto;
}

.secSolution {
  padding: 11px 0 54px;
  background-color: #F9F9F9;
}

@media screen and (min-width: 768px) {
  .secSolution {
    padding-bottom: 80px;
  }
}

.secSolution__ttl {
  margin-bottom: 13px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.secSolution__ttl_txt1 {
  margin-bottom: 13px;
  width: 165px;
  display: block;
}

.secSolution__ttl_txt2 {
  margin-bottom: 4px;
  font-size: 16px;
  font-weight: 700;
  display: block;
}

.secSolution__ttl_txt3 {
  font-size: 24px;
  font-weight: 700;
  text-align: center;
}

.secSolution__ttl_txt3 strong {
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .secSolution__ttl {
    margin-bottom: 25px;
  }

  .secSolution__ttl_txt2 {
    font-size: 20px;
  }

  .secSolution__ttl_txt3 {
    font-size: 32px;
  }
}

.secSolution__row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  grid-gap: 17px;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .secSolution__row {
    width: 100%;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 1024px) {
  .secSolution__row {
    flex-direction: row;
    grid-gap: 0;
  }
}

@media screen and (min-width: 1200px) {
  .secSolution__row {
    grid-gap: 64px;
  }
}

.secSolution__others {
  width: 100%;
  padding: 0 10px;
}

.secSolution__others_ttl {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}

.secSolution__others_ttl_jp {
  width: 110px;
  margin: 11px 0 -16px -10px;
  flex-shrink: 0;
}

.secSolution__others_ttl_en {
  color: #EEE;
  font-size: 22px;
  font-weight: 900;
  letter-spacing: -0.03em;
  line-height: 1.6;
}

.secSolution__others_row {
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  grid-gap: 14px;
}

.secSolution__others_row_img {
  width: 130px;
  flex-shrink: 0;
}

.secSolution__others_row_txt {
  width: 100%;
  margin: -9px 0 0;
  background: url('data:image/svg+xml;charset=utf8,<svg width="4" height="28" viewBox="0 0 4 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1.98958 28H0V27H1.98958V28Z" fill="%23263142"/></svg>') left top -3px/4px repeat;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.9;
}

.secSolution__others_txt {
  line-height: 1.6;
}

@media screen and (min-width: 1024px) {
  .secSolution__others {
    width: 40%;
    max-width: 367px;
    padding: 0 0 0 10px;
    flex-shrink: 0;
  }
}

@media screen and (min-width: 1200px) {
  .secSolution__others_row_txt {
    background: url('data:image/svg+xml;charset=utf8,<svg width="4" height="30" viewBox="0 0 4 30" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 30H0V29H2V30Z" fill="%23263142"/></svg>') left top/4px repeat;
    font-size: 16px;
    line-height: 1.9;
  }
}

.secSolution__myshop {
  width: 100%;
  padding: 0 10px;
}

.secSolution__myshop_ttl {
  width: 100%;
  max-width: 340px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}

.secSolution__myshop_ttl_jp {
  width: 150px;
  margin: 11px 0 -24px -10px;
  flex-shrink: 0;
}

.secSolution__myshop_ttl_en {
  color: #EEE;
  font-size: 22px;
  font-weight: 900;
  letter-spacing: 0.05em;
  line-height: 1.6;
}

.secSolution__myshop_row {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.secSolution__myshop_row_img {
  width: 100%;
}

.secSolution__myshop_row_txt {
  margin: -20px 0 20px;
  font-size: 18px;
  font-weight: 600;
  text-align: center;
}

.secSolution__myshop_row_txt strong {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
}

.secSolution__myshop_txt {
  line-height: 1.6;
}

@media screen and (min-width: 1024px) {
  .secSolution__myshop_row {
    flex-direction: row;
    align-items: flex-start;
    grid-gap: 25px;
  }

  .secSolution__myshop_row_img {
    width: 45%;
    flex-shrink: 0;
  }

  .secSolution__myshop_row_txtWrap {
    width: 100%;
  }

  .secSolution__myshop_row_txt {
    margin: 4px 0 13px;
    font-size: 20px;
    text-align: left;
  }

  .secSolution__myshop_row_txt strong {
    font-size: 24px;
  }
}

@media screen and (min-width: 1200px) {
  .secSolution__myshop_row_txt br.disp_pc {
    display: none;
  }
}

.secFeature__pointBlk {
  padding: 38px 0 60px;
  background: #008EC9 url(../images/feature_pointbg.jpg) right top/82% no-repeat;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .secFeature__pointBlk {
    padding: 80px 0;
    background-size: 657px;
  }
}

@media screen and (min-width: 768px) {
  .secFeature__pointBlk_inner {
    max-width: 588px;
  }
}

.secFeature__pointBlk_ttl {
  padding: 0 16px;
  margin-bottom: 9px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}

.secFeature__pointBlk_ttl em {
  font-size: 20px;
  font-style: normal;
}

.secFeature__pointBlk_ttl strong {
  padding: 0 8px 2px 6px;
  margin: 9px 6px 0 -6px;
  background-color: #fff;
  color: #263142;
  font-size: 24px;
  font-weight: 800;
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .secFeature__pointBlk_ttl {
    margin-bottom: 10px;
    text-align: center;
  }
}

.secFeature__pointBlk_txt {
  padding: 0 0 0 16px;
  margin-bottom: 54px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .secFeature__pointBlk_txt {
    text-align: center;
  }
}

.secFeature__pointBlk_box {
  width: calc(100% - 20px);
  margin: 0 auto;
  background-color: #fff;
  box-shadow: 12px 12px 4px rgba(0, 0, 0, 0.25);
}

.secFeature__pointBlk_box_top {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.secFeature__pointBlk_box_top .txt--orange {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}

.secFeature__pointBlk_box_bottom {
  padding: 13px 0 14px;
  background-color: #FF4800;
  font-size: 18px;
  font-weight: 700;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.8);
  line-height: 1.4;
  text-align: center;
}

.secFeature__pointBlk_box_list {
  width: calc(100% + 26px);
  margin: -36px -10px 13px;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
  grid-gap: 9px 7px;
}

.secFeature__pointBlk_box_list li {
  width: calc((100% - 14px) / 3);
  padding-top: 22.438%;
  font-size: 14px;
  font-weight: 700;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.8);
  line-height: 1.4;
  text-align: center;
  position: relative;
}

.secFeature__pointBlk_box_list li::before {
  content: "";
  width: calc(100% + 7px);
  height: calc(100% + 7px);
  background: url(../images/feature_pointitem.png) left top/contain no-repeat;
  position: absolute;
  top: 0;
  left: 0;
}

.secFeature__pointBlk_box_list li>span {
  white-space: nowrap;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .secFeature__pointBlk_box {
    width: 100%;
  }

  .secFeature__pointBlk_box_top {
    padding-bottom: 10px;
  }

  .secFeature__pointBlk_box_bottom {
    padding: 16px 0;
    font-size: 20px;
  }

  .secFeature__pointBlk_box_list li {
    width: calc((100% - 28px) / 5);
    padding-top: 13.322%;
  }
}

.secFeature__priceBlk {
  color: #fff;
  position: relative;
}

.secFeature__priceBlk_img {
  width: 100%;
  overflow: hidden;
}

.secFeature__priceBlk_img img {
  width: 344%;
  max-width: inherit;
  display: block;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .secFeature__priceBlk_img img {
    width: 1440px;
  }
}

@media screen and (min-width: 1440px) {
  .secFeature__priceBlk_img img {
    width: 100%;
  }
}

.secFeature__priceBlk_inner {
  height: 100%;
  padding: 29px 0 39px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .secFeature__priceBlk_inner {
    padding: 50px 0 35px;
  }
}

.secFeature__priceBlk_ttl {
  font-size: 20px;
  font-weight: 700;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  text-align: center;
}

.secFeature__priceBlk_ttl .fukidashi {
  padding: 1px 10px 6px;
  background-color: #263142;
  border-radius: 5px;
  color: #fff;
  font-size: 16px;
  display: block;
  position: absolute;
  top: -19px;
  left: 50%;
  transform: translateX(-50%);
}

.secFeature__priceBlk_ttl .fukidashi::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 7px solid #263142;
  border-right: 3px solid transparent;
  border-left: 3px solid transparent;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
}

@media screen and (min-width: 768px) {
  .secFeature__priceBlk_ttl {
    font-size: 24px;
  }
}

.secFeature__priceBlk_txt {
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.17em;
  line-height: 1.4;
}

.secFeature__priceBlk_txt strong {
  font-size: 30px;
}

@media screen and (min-width: 768px) {
  .secFeature__priceBlk_txt {
    font-size: 24px;
  }

  .secFeature__priceBlk_txt strong {
    font-size: 40px;
  }
}

.secFeature__priceBlk_priceWrap {
  width: 100%;
  max-width: 331px;
  margin: auto auto 0;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.secFeature__priceBlk_priceNormal {
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.secFeature__priceBlk_priceNormal dt {
  padding: 4px 1px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}

.secFeature__priceBlk_priceNormal dd {
  font-size: 14px;
  font-weight: 700;
}

.secFeature__priceBlk_priceNormal dd strong {
  font-size: 30px;
}

.secFeature__priceBlk_priceSpecial {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.secFeature__priceBlk_priceSpecial dt {
  background-color: #FF0080;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

.secFeature__priceBlk_priceSpecial dd {
  color: #FF0080;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.secFeature__priceBlk_priceSpecial dd strong {
  font-size: 42px;
  display: inline-block;
  position: relative;
  z-index: 1;
}

.secFeature__priceBlk_priceSpecial dd span {
  display: inline-block;
}

.secFeature__priceBlk_priceSpecial dd .edge {
  text-shadow: 0px 7px 7px rgba(0, 0, 0, 0.25);
}

.secContact {
  padding: 13px 0 14px;
  background: url(../images/contact_bg.jpg) left top/100% no-repeat;
}

@media screen and (min-width: 768px) {
  .secContact {
    padding: 57px 0 0;
  }
}

.secContact__ttl {
  position: relative;
}

.secContact__ttl .serif {
  width: 100%;
  color: #fff;
  font-size: 72px;
  font-weight: 400;
  text-align: center;
  display: block;
}

.secContact__ttl .jp {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  position: absolute;
  top: calc(50% + 6px);
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .secContact__ttl .serif {
    font-size: 80px;
  }

  .secContact__ttl .jp {
    font-size: 24px;
  }
}

.secContact__inner {
  margin-bottom: 46px;
  display: grid;
  grid-gap: 15px;
  counter-reset: contact_blk 0;
}

@media screen and (min-width: 768px) {
  .secContact__inner {
    max-width: 900px;
    margin-bottom: 32px;
    grid-gap: 41px;
  }
}

.secContact__pointBlk {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.secContact__pointBlk_ttl {
  width: 100%;
  margin-bottom: 17px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 16px;
}

.secContact__pointBlk_ttl::before {
  counter-increment: contact_blk 1;
  content: counter(contact_blk, decimal-leading-zero);
  padding-bottom: 5px;
  border-bottom: 1px solid #008EC9;
  color: #008EC9;
  font-size: 40px;
  font-weight: 700;
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  display: block;
}

.secContact__pointBlk_ttl strong {
  font-size: 24px;
}

.secContact__pointBlk_box {
  padding: 20px 10px;
  background-color: #fff;
  text-align: center;
}

.secContact__pointBlk_box+.secContact__pointBlk_box {
  margin-top: 11px;
}

.secContact__pointBlk_box_img {
  width: 100%;
}

.secContact__pointBlk_box_img:not(:first-child) {
  margin-top: 15px;
}

.secContact__pointBlk_box p {
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
}

.secContact__pointBlk_box p:not(:first-child) {
  margin-top: 15px;
}

.secContact__pointBlk_box p strong {
  font-size: 16px;
  font-weight: 500;
}

.secContact__pointBlk_box ul {
  width: 100%;
  max-width: 283px;
  margin: 9px auto 0;
  font-size: 14px;
  font-weight: 700;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.secContact__pointBlk_box ul li {
  padding-left: 24px;
  line-height: 2;
  text-align: left;
  position: relative;
}

.secContact__pointBlk_box ul li::before {
  content: "";
  width: 12px;
  height: 100%;
  background: url('data:image/svg+xml;charset=utf8,<svg width="12" height="10" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.6635 0.251789C12.0767 0.618201 12.1146 1.25023 11.7482 1.66346L4.79311 9.50729L0.251789 4.38568C-0.114623 3.97245 -0.0766688 3.34042 0.336563 2.97401C0.749795 2.6076 1.38182 2.64555 1.74823 3.05879L4.79311 6.49273L10.2518 0.336563C10.6182 -0.0766688 11.2502 -0.114623 11.6635 0.251789Z" fill="%23FF4800"/></svg>') center/contain no-repeat;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.secContact__pointBlk_img {
  width: 100%;
  margin-bottom: 22px;
  position: relative;
  z-index: 1;
}

.secContact__pointBlk_table {
  width: 100%;
  font-size: 14px;
}

.secContact__pointBlk_table thead td {
  padding: 3px 10px;
  background-color: #263142;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
}

.secContact__pointBlk_table thead td:first-child {
  width: 135px;
  border-right: 1px solid #F2EFE8;
}

.secContact__pointBlk_table tbody th,
.secContact__pointBlk_table tbody td {
  padding: 9px 10px;
  border-bottom: 1px solid #263142;
}

.secContact__pointBlk_table tbody th {
  border-right: 1px solid #263142;
  font-weight: 700;
  line-height: 1.6;
}

.secContact__pointBlk_table tbody td {
  font-size: 12px;
  line-height: 1.4;
}

.secContact__pointBlk_txt {
  padding: 0 10px;
  margin-top: 16px;
  line-height: 1.8;
  order: 1;
}

.secContact__pointBlk_leftCol {
  display: contents;
}

@media screen and (max-width: 767px) {
  .secContact__pointBlk_img+.secContact__pointBlk_box {
    padding: 34px 20px 30px;
    margin: -50px 0 0;
  }
}

@media screen and (min-width: 768px) {
  .secContact__pointBlk {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
  }

  .secContact__pointBlk_ttl {
    margin-bottom: 24px;
  }

  .secContact__pointBlk_txt {
    padding: 0;
    margin-top: 23px;
  }

  .secContact__pointBlk_box {
    width: 100%;
    padding: 34px 15px 30px;
    margin: 0 auto;
  }

  .secContact__pointBlk_box+.secContact__pointBlk_box {
    margin-top: 0;
  }

  .secContact__pointBlk_box_img {
    max-width: 335px;
    margin: 0 auto;
  }

  .secContact__pointBlk_box_img:not(:first-child) {
    margin-top: 20px;
  }

  .secContact__pointBlk_box ul {
    max-width: 295px;
    margin: 11px auto 0;
  }

  .secContact__pointBlk_img {
    width: 100%;
    margin-bottom: 0;
  }

  .secContact__pointBlk_img--center {
    width: 100%;
  }

  .secContact__pointBlk_img--center img {
    max-width: 358px;
    margin: 0 auto -27px;
    position: relative;
    z-index: 1;
  }

  .secContact__pointBlk_table {
    width: 57%;
    max-width: 505px;
  }

  .secContact__pointBlk_table thead td {
    padding: 6px 15px;
  }

  .secContact__pointBlk_table thead td:first-child {
    width: 190px;
  }

  .secContact__pointBlk_table tbody th,
  .secContact__pointBlk_table tbody td {
    padding: 16px 14px;
  }

  .secContact__pointBlk_leftCol {
    width: 39.5%;
    display: block;
  }
}

@media screen and (min-width: 1024px) {
  .secContact__pointBlk_table tbody td {
    font-size: 14px;
  }
}

.secOnsite__ttl {
  margin-bottom: -17px;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .secOnsite__ttl {
    margin-bottom: -23px;
  }
}

.secOnsite__stepList {
  width: calc(100% + 20px);
  margin-bottom: 42px;
  display: grid;
  counter-reset: onsite_step 0;
  position: relative;
  left: 50%;
  transform: translate(-50%);
}

@media screen and (min-width: 768px) {
  .secOnsite__stepList {
    width: calc(100% + 40px);
    margin-bottom: 16px;
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (min-width: 1240px) {
  .secOnsite__stepList {
    width: calc(100% + (50vw - 600px) * 2);
    max-width: 1440px;
  }
}

.secOnsite__stepListItem {
  position: relative;
}

.secOnsite__stepListItem_img {
  width: 100%;
}

.secOnsite__stepListItem_txtBox {
  width: 290px;
  height: 180px;
  padding: 26px 28px 26px 20px;
  background: linear-gradient(135deg, rgba(236, 243, 255, 0.8) 0%, rgba(255, 255, 255, 0.8) 100%);
  position: absolute;
  bottom: -27px;
  left: 0;
  z-index: 1;
}

.secOnsite__stepListItem_ttl {
  margin-bottom: 19px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
}

.secOnsite__stepListItem_ttl::before,
.secOnsite__stepListItem_ttl::after {
  width: 20px;
  height: 140px;
  color: #fff;
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.35);
  display: flex;
  position: absolute;
  top: -16px;
  right: -40px;
}

.secOnsite__stepListItem_ttl::before {
  content: "STEP \\";
  font-size: 28px;
  font-weight: 700;
  writing-mode: vertical-rl;
  align-items: center;
  justify-content: flex-start;
}

.secOnsite__stepListItem_ttl::after {
  counter-increment: onsite_step 1;
  content: counter(onsite_step, decimal-leading-zero);
  font-size: 40px;
  align-items: flex-end;
  justify-content: center;
}

.secOnsite__stepListItem_txt {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .secOnsite__stepListItem_txtBox {
    bottom: 50%;
    transform: translate(0, 50%);
  }

  .secOnsite__stepListItem_txtBox--01 {
    left: 20px;
  }

  .secOnsite__stepListItem_txtBox--02 {
    left: auto;
    right: 20px;
  }

  .secOnsite__stepListItem_ttl::before,
  .secOnsite__stepListItem_ttl::after {
    top: -2px;
    right: -32px;
  }
}

@media screen and (min-width: 1024px) {
  .secOnsite__stepListItem_txtBox {
    width: 400px;
    height: 265px;
    padding: 46px 67px 46px 37px;
  }
}

@media screen and (min-width: 1200px) {
  .secOnsite__stepListItem_txtBox {
    width: 480px;
    height: 317px;
    padding: 86px 67px;
  }

  .secOnsite__stepListItem_ttl {
    margin-bottom: 16px;
    font-size: 24px;
  }
}

@media screen and (min-width: 1240px) {
  .secOnsite__stepListItem_txtBox--01 {
    left: calc(50vw - 600px);
  }

  .secOnsite__stepListItem_txtBox--02 {
    right: calc(50vw - 600px);
  }
}

@media screen and (min-width: 1440px) {
  .secOnsite__stepListItem_txtBox--01 {
    left: 120px;
  }

  .secOnsite__stepListItem_txtBox--02 {
    right: 120px;
  }
}

.secOnsite__txt {
  padding: 0 10px;
  margin-bottom: 88px;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .secOnsite__txt {
    margin-bottom: 106px;
    text-align: center;
  }
}

.secOnsite__areaBlk {
  padding: 0 0 77px;
}

@media screen and (min-width: 768px) {
  .secOnsite__areaBlk {
    padding-bottom: 101px;
  }
}

.secOnsite__areaBlk_ttl {
  width: 100%;
  height: 60px;
  padding: 0 20px;
  background-color: #2A3B6F;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  display: flex;
  justify-content: center;
}

.secOnsite__areaBlk_ttl span {
  width: 100%;
  max-width: 335px;
  height: 100%;
  display: flex;
  align-items: center;
  position: relative;
}

.secOnsite__areaBlk_ttl span::after {
  content: "";
  width: 195px;
  height: 121px;
  background: url(../images/intro_listimg02.png) top left/cover no-repeat;
  display: block;
  position: absolute;
  bottom: 0;
  right: -3px;
}

@media screen and (min-width: 768px) {
  .secOnsite__areaBlk_ttl {
    height: 72px;
    font-size: 32px;
    text-align: center;
    justify-content: center;
  }

  .secOnsite__areaBlk_ttl span {
    max-width: 420px;
    left: 7%;
  }
}

.secOnsite__areaBlk_imageArea {
  width: calc(100% + 20px);
  padding: 20px 0 58px;
  background: url(../images/onsite_areabg.jpg) center/cover no-repeat;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  left: 50%;
  transform: translate(-50%);
}

.secOnsite__areaBlk_imageArea_img {
  width: 100%;
  max-width: 310px;
  margin: 0 auto 10px;
}

.secOnsite__areaBlk_imageArea_txt {
  color: #fff;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  text-shadow: 0px 0px 11px #000;
}

@media screen and (min-width: 768px) {
  .secOnsite__areaBlk_imageArea {
    width: 100vw;
    padding: 27px 0 138px;
    flex-direction: row;
    justify-content: center;
    grid-gap: 30px;
  }

  .secOnsite__areaBlk_imageArea_img {
    width: 50%;
    max-width: 306px;
    margin: 0;
    flex-shrink: 0;
  }
}

.secOnsite__areaBlk_txtBox {
  width: calc(100% - 56px);
  margin: -36px auto 0;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  position: relative;
}

.secOnsite__areaBlk_txtBox::after {
  content: "";
  width: 100%;
  height: 34px;
  background: url(../images/intro_shadow.png) center top/contain no-repeat;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(0, 100%);
}

.secOnsite__areaBlk_txtBox_ttl {
  width: 100%;
  padding: 14px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.secOnsite__areaBlk_txtBox_label {
  width: calc(100% + 2px);
  padding: 12px 0 14px;
  margin: 0 -1px;
  background-color: #FF4800;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.8);
}

.secOnsite__areaBlk_txtBox_txt {
  width: 100%;
  padding: 14px 24px 26px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .secOnsite__areaBlk_txtBox {
    max-width: 1000px;
    margin-top: -112px;
  }

  .secOnsite__areaBlk_txtBox::after {
    height: 40px;
    background: url(../images/area_shadow-pc.png) center bottom/cover no-repeat;
  }

  .secOnsite__areaBlk_txtBox_txt {
    padding: 20px 10px 32px;
    text-align: center;
  }

  .secOnsite__areaBlk_txtBox_label {
    padding: 22px 0;
  }
}

.secImported {
  padding: 1px 0 122px;
  background: linear-gradient(-90deg, #2A3B6F 0%, #4D6CCA 100%);
}

@media screen and (min-width: 768px) {
  .secImported {
    padding-bottom: 188px;
  }
}

.secImported__ttl {
  margin: -21px 0 27px;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}

.secImported__ttl>strong,
.secImported__ttl>span {
  background-image: radial-gradient(#C9A100, #996900);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.secImported__ttl strong {
  font-size: 24px;
  line-height: 1.1;
}

.secImported__ttl .edge {
  text-shadow: 6px 6px 4px rgba(0, 0, 0, 0.25);
}

@media screen and (min-width: 768px) {
  .secImported__ttl {
    margin-bottom: 33px;
    font-size: 24px;
  }

  .secImported__ttl strong {
    font-size: 32px;
  }
}

.secImported__listTtl {
  margin-bottom: 15px;
  display: flex;
  justify-content: center;
}

.secImported__listTtl .fukidashi {
  padding: 6px 14px 6px;
  background: linear-gradient(180deg, #ECECEC 0%, #CCDEFF 100%);
  border-radius: 5px;
  font-size: 16px;
  font-weight: 700;
  white-space: nowrap;
  display: block;
  position: relative;
}

.secImported__listTtl .fukidashi::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 7px solid #CCDEFF;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
}

@media screen and (min-width: 768px) {
  .secImported__listTtl {
    margin-bottom: 21px;
  }

  .secImported__listTtl .fukidashi {
    font-size: 20px;
  }
}

.secImported__list {
  margin-bottom: 13px;
  display: grid;
  grid-gap: 8px;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .secImported__list {
    width: 100%;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 1024px) {
  .secImported__list {
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 20px;
  }
}

@media screen and (min-width: 1200px) {
  .secImported__list {
    margin-bottom: 40px;
  }
}

@media screen and (min-width: 1440px) {
  .secImported__list {
    grid-template-columns: repeat(auto-fill, 376px);
    justify-content: space-between;
  }
}

.secImported__listItem {
  display: flex;
  align-items: center;
  grid-gap: 12px;
  position: relative;
}

.secImported__listItem::before {
  content: "";
  width: 100%;
  height: calc(100% - 12px);
  background: linear-gradient(90deg, #CCDEFF 0%, #fff 100%);
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.secImported__listItem_img {
  width: 106px;
  height: 100px;
  flex-shrink: 0;
}

.secImported__listItem_img img {
  width: calc(100% + 7px);
  height: calc(100% + 8px);
  max-width: inherit;
  display: block;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.secImported__listItem_txt {
  width: 100%;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
}

@media screen and (min-width: 1024px) and (max-width: 1199px) {
  .secImported__listItem_txt {
    margin-left: -5px;
  }
}

.secImported__txtBlk {
  color: #fff;
}

.secImported__txtBlk_ttl {
  margin-bottom: 21px;
  font-size: 18px;
  font-weight: 700;
  line-height: 2.2;
  text-align: center;
}

.secImported__txtBlk_ttl span {
  -webkit-text-decoration: underline dashed 1px;
  text-decoration: underline dashed 1px;
  text-underline-offset: 10px;
}

.secImported__txtBlk p {
  font-size: 14px;
  line-height: 1.6;
}

.secImported__txtBlk p+p {
  margin-top: 1.6em;
}

@media screen and (min-width: 768px) {
  .secImported__txtBlk {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .secImported__txtBlk_ttl {
    margin-bottom: 20px;
  }

  .secImported__txtBlk p {
    width: 100%;
    max-width: 793px;
    margin-left: auto;
    margin-right: auto;
  }
}

.secVoice {
  margin-top: -61px;
}

@media screen and (min-width: 768px) {
  .secVoice__customerBlk {
    margin-top: -86px;
  }
}

.secVoice__customerBlk_ttl {
  margin-bottom: -78px;
}

.secVoice__customerBlk_ttl .serif {
  width: 100%;
  color: #fff;
  font-size: 52px;
  text-align: center;
  display: block;
}

.secVoice__customerBlk_ttl .jp {
  width: 100%;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  display: block;
  transform: translateY(-107px);
}

.secVoice__customerBlk_ttl .jp .edge {
  text-shadow: 6px 6px 4px rgba(0, 0, 0, 0.25);
}

@media screen and (min-width: 768px) {
  .secVoice__customerBlk_ttl {
    margin-bottom: -111px;
  }

  .secVoice__customerBlk_ttl .serif {
    font-size: 72px;
  }

  .secVoice__customerBlk_ttl .jp {
    font-size: 32px;
    transform: translateY(-150px);
  }
}

.secVoice__customerBlk_row {
  width: calc(100% + 20px);
  padding: 13px 10px 16px;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 5px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .secVoice__customerBlk_row {
    width: 100vw;
    padding: 32px 20px 24px;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
    grid-gap: 10px;
  }
}

@media screen and (min-width: 1024px) {
  .secVoice__customerBlk_row {
    grid-gap: 20px;
  }
}

.secVoice__customerBlk_img {
  width: 100%;
  max-width: 260px;
}

@media screen and (min-width: 768px) {
  .secVoice__customerBlk_img {
    max-width: 275px;
  }
}

.secVoice__customerBlk_msgWrap {
  width: 100%;
  padding: 38px 24px;
  background-color: #008EC9;
  -webkit-clip-path: polygon(0 17px, calc(50% - 23px) 17px, 50% 0, calc(50% + 23px) 17px, 100% 17px, 100% 100%, 0 100%);
  clip-path: polygon(0 17px, calc(50% - 23px) 17px, 50% 0, calc(50% + 23px) 17px, 100% 17px, 100% 100%, 0 100%);
  position: relative;
}

.secVoice__customerBlk_msgWrap::before {
  content: "";
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  background-color: #fff;
  -webkit-clip-path: polygon(0 17px, calc(50% - 23px) 17px, 50% 0, calc(50% + 23px) 17px, 100% 17px, 100% 100%, 0 100%);
  clip-path: polygon(0 17px, calc(50% - 23px) 17px, 50% 0, calc(50% + 23px) 17px, 100% 17px, 100% 100%, 0 100%);
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.secVoice__customerBlk_msgWrap p {
  background: url('data:image/svg+xml;charset=utf8,<svg width="4" height="32" viewBox="0 0 4 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0 31.5C0 31.2239 0.223857 31 0.5 31H2.50649C2.78264 31 3.00649 31.2239 3.00649 31.5C3.00649 31.7761 2.78264 32 2.50649 32H0.5C0.223857 32 0 31.7761 0 31.5Z" fill="%23008EC9"/></svg>') left top -3px/4px repeat;
  color: #008EC9;
  font-size: 14px;
  font-weight: 600;
  line-height: 2.3;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .secVoice__customerBlk_msgWrap {
    max-width: 627px;
    padding: 30px 30px 30px 44px;
    -webkit-clip-path: polygon(17px 0, 100% 0%, 100% 100%, 17px 100%, 17px calc(50% + 23px), 0 50%, 17px calc(50% - 23px));
    clip-path: polygon(17px 0, 100% 0%, 100% 100%, 17px 100%, 17px calc(50% + 23px), 0 50%, 17px calc(50% - 23px));
  }

  .secVoice__customerBlk_msgWrap::before {
    -webkit-clip-path: polygon(17px 0, 100% 0%, 100% 100%, 17px 100%, 17px calc(50% + 23px), 0 50%, 17px calc(50% - 23px));
    clip-path: polygon(17px 0, 100% 0%, 100% 100%, 17px 100%, 17px calc(50% + 23px), 0 50%, 17px calc(50% - 23px));
  }
}

@media screen and (min-width: 1024px) {
  .secVoice__customerBlk_msgWrap {
    padding: 50px 50px 50px 64px;
  }
}

.secVoice__replyBlk {
  background-color: #fff;
}

.secVoice__replyBlk_ttl {
  width: 250px;
  margin: 0 0 -32px;
  position: relative;
  z-index: 1;
}

.secVoice__replyBlk_txtWrap {
  width: 100%;
  padding: 42px 10px 33px;
  background-color: #E7F2FD;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
}

@media screen and (min-width: 768px) {
  .secVoice__replyBlk_ttl {
    margin: 0 auto -39px;
  }

  .secVoice__replyBlk_txtWrap {
    padding: 51px 10px 50px;
  }

  .secVoice__replyBlk_txtWrap p {
    width: 100%;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
  }
}

.secPoint {
  padding: 78px 0 42px;
  background-image: url(../images/point_bg.jpg), linear-gradient(180deg, #fff 0%, #D8F1FF 172px);
  background-size: 100%, 100%;
  background-position: right bottom, center top;
  background-repeat: no-repeat;
}

@media screen and (min-width: 768px) {
  .secPoint {
    padding: 116px 0 75px;
  }
}

.secPoint__introBlk_ttl {
  width: 100%;
  max-width: 409px;
  padding: 0 10px;
  margin: 0 auto -10px;
  color: #008EC9;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
  position: relative;
}

.secPoint__introBlk_ttl::after {
  content: "";
  width: 202px;
  height: 160px;
  background: url(../images/point_intro01.png) right top/cover no-repeat;
  display: block;
  position: absolute;
  bottom: 10px;
  right: -9px;
}

.secPoint__introBlk_ttl .fukidashi {
  width: 101px;
  padding: 4px 14px 4px;
  margin-bottom: 12px;
  background: #263142;
  border-radius: 5px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  white-space: nowrap;
  display: block;
  position: relative;
}

.secPoint__introBlk_ttl .fukidashi::after {
  content: "";
  width: 10px;
  height: 8px;
  background-color: #263142;
  -webkit-clip-path: polygon(0 0, 100% 100%, calc(100% - 2px) 0);
  clip-path: polygon(0 0, 100% 100%, calc(100% - 2px) 0);
  display: block;
  position: absolute;
  bottom: 0;
  right: 23px;
  transform: translateY(100%);
}

.secPoint__introBlk_ttl .edge {
  text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
}

@media screen and (min-width: 768px) {
  .secPoint__introBlk_ttl {
    margin-bottom: -20px;
    font-size: 24px;
  }

  .secPoint__introBlk_ttl::after {
    width: 247px;
    height: 208px;
    bottom: 10px;
    right: 0px;
  }

  .secPoint__introBlk_ttl .fukidashi {
    margin-bottom: 22px;
  }
}

.secPoint__introBlk_list {
  width: 100%;
  max-width: 700px;
  padding: 30px 0 37px 17px;
  margin: 0 auto -16px;
  background: linear-gradient(180deg, #fff 0%, #E5E5E5 100%);
  border-radius: 10px;
  display: grid;
  grid-gap: 10px;
}

.secPoint__introBlk_list li {
  width: 100%;
  max-width: 526px;
  margin: 0 auto;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.4;
  display: flex;
  align-items: center;
  grid-gap: 14px;
}

.secPoint__introBlk_list li::before {
  content: "";
  width: 28px;
  height: 28px;
  background: url(../images/point_listicon.png) center/contain no-repeat;
  display: block;
  flex-shrink: 0;
}

.secPoint__introBlk_list li strong {
  font-size: 18px;
}

@media screen and (min-width: 768px) {
  .secPoint__introBlk_list {
    padding-bottom: 52px;
    margin-bottom: -21px;
  }
}

.secPoint__introBlk_txt {
  font-size: 22px;
  font-weight: 700;
  text-align: center;
}

.secPoint__introBlk_arrow {
  width: 34px;
  margin: 6px auto 10px;
  display: block;
}

.secPoint__introBlk_summary {
  width: 100%;
  padding: 12px 10px;
  background-color: #008EC9;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.6);
}

.secPoint__introBlk_summary strong {
  font-size: 22px;
}

@media screen and (min-width: 768px) {
  .secPoint__introBlk_summary {
    max-width: 1200px;
    margin: 0 auto;
    font-size: 20px;
  }

  .secPoint__introBlk_summary strong.larger {
    font-size: 32px;
  }
}

.secPoint__pointBlk {
  padding: 41px 0 32px;
}

.secPoint__pointBlk_list {
  padding: 0 10px;
  display: grid;
  grid-gap: 41px;
  counter-reset: point_list 0;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .secPoint__pointBlk_list {
    width: 100%;
    max-width: 400px;
    padding: 0;
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 1024px) {
  .secPoint__pointBlk_list {
    padding: 0;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 30px;
  }
}

.secPoint__pointBlk_listItem {
  padding: 30px 0 26px;
  background-color: #fff;
  background-size: 100%;
  background-position: center top;
  background-repeat: no-repeat;
  text-align: center;
  border: 2px solid #263142;
  position: relative;
}

.secPoint__pointBlk_listItem::before {
  content: "";
  width: 34px;
  height: 24px;
  background-color: #263142;
  -webkit-clip-path: polygon(5% 0, 0% 100%, 100% 0);
  clip-path: polygon(5% 0, 0% 100%, 100% 0);
  display: block;
  position: absolute;
  bottom: 0;
  left: calc(50% + 6px);
  transform: translate(-50%, 100%);
}

.secPoint__pointBlk_listItem--01 {
  background-image: url(../images/point_pointbg01.jpg);
}

.secPoint__pointBlk_listItem--02 {
  background-image: url(../images/point_pointbg02.jpg);
}

.secPoint__pointBlk_listItem_number {
  width: 141px;
  height: 40px;
  padding: 0 12px;
  background-color: #263142;
  border-radius: 4px;
  color: #fff;
  font-size: 22px;
  font-weight: 900;
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  top: -20px;
  left: -2px;
}

.secPoint__pointBlk_listItem_number::after {
  counter-increment: point_list 1;
  content: counter(point_list, decimal-leading-zero);
  font-size: 30px;
}

.secPoint__pointBlk_listItem_ttl {
  margin-bottom: 6px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.7;
}

.secPoint__pointBlk_listItem_ttl strong {
  font-size: 30px;
  line-height: 22px;
}

.secPoint__pointBlk_listItem_txt1 {
  margin-bottom: 20px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
}

.secPoint__pointBlk_listItem_txt2 span {
  padding: 0 6px;
  margin-bottom: 5px;
  background-color: #263142;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  display: inline-block;
}

.secPoint__pointBlk_listItem_txt2 span strong {
  font-size: 20px;
  line-height: 1;
}

.secPoint__pointBlk_listItem_txt3 {
  padding: 0 18px;
  margin: 15px 0 13px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  text-align: left;
}

.secPoint__pointBlk_listItem_txt4 {
  padding: 0 18px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
  text-align: left;
}

.secPoint__pointBlk_listItem_txt4>strong {
  background: linear-gradient(180deg, #FF4800 0%, #D13B00 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.secPoint__pointBlk_listItem_txt4 .edge {
  text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2);
}

.secPoint__pointBlk_listItem_txt5 {
  padding: 0 6px 0 13px;
  margin-top: 15px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.8;
  text-align: left;
}

.secPoint__pointBlk_listItem_txt5 strong {
  font-size: 18px;
  font-weight: 600;
}

.secPoint__pointBlk_listItem_txt5+.secPoint__pointBlk_listItem_txt5 {
  margin-top: 1.8em;
}

.secPoint__pointBlk_listItem_cross {
  width: 50px;
  margin: 7px auto 11px;
  display: block;
}

@media screen and (min-width: 1024px) {
  .secPoint__pointBlk_listItem::before {
    left: 25%;
    transform: translate(0, 100%);
  }

  .secPoint__pointBlk_listItem_ttl {
    font-size: 24px;
  }

  .secPoint__pointBlk_listItem_ttl strong {
    font-size: 38px;
  }

  .secPoint__pointBlk_listItem_txt2 span {
    font-size: 15px;
    line-height: 2;
  }

  .secPoint__pointBlk_listItem_txt2 span strong {
    font-size: 20px;
  }

  .secPoint__pointBlk_listItem_txt2.pc-horizontal {
    display: flex;
    justify-content: center;
  }

  .secPoint__pointBlk_listItem_txt2.pc-horizontal span {
    white-space: nowrap;
  }

  .secPoint__pointBlk_listItem_txt2.pc-horizontal span:nth-child(1) {
    padding: 0 0 0 6px;
  }

  .secPoint__pointBlk_listItem_txt2.pc-horizontal span:nth-child(2) {
    padding: 0 6px 0 0;
    margin-left: -2px;
  }

  .secPoint__pointBlk_listItem_txt3 {
    text-align: center;
  }

  .secPoint__pointBlk_listItem_txt4 {
    text-align: center;
  }

  .secPoint__pointBlk_listItem_txt5 {
    width: 100%;
    max-width: 464px;
    margin: 36px auto 0;
    font-size: 16px;
  }
}

@media screen and (min-width: 1200px) {
  .secPoint__pointBlk_listItem_txt2 span {
    font-size: 16px;
    line-height: 2;
  }

  .secPoint__pointBlk_listItem_txt2 span strong {
    font-size: 24px;
  }
}

.secPoint__txtBlk {
  text-align: center;
}

.secPoint__txtBlk_ttl {
  margin-bottom: 15px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.7;
}

.secPoint__txtBlk_txt1 {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 1.6;
}

.secPoint__txtBlk_txt2 {
  margin-bottom: 13px;
  font-size: 20px;
  line-height: 1.4;
}

.secPoint__txtBlk_txt3 {
  font-size: 16px;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .secPoint__txtBlk_ttl {
    margin-bottom: 21px;
    font-size: 24px;
  }

  .secPoint__txtBlk_txt1 {
    margin-bottom: 21px;
  }

  .secPoint__txtBlk_txt2 {
    margin-bottom: 22px;
    font-size: 24px;
  }
}

.secPrice {
  padding: 0 0 50px;
}

@media screen and (min-width: 768px) {
  .secPrice {
    padding-bottom: 80px;
  }
}

.secPrice__ttl {
  height: auto;
  padding: 14px 0 41px;
  margin-bottom: 10px;
  flex-direction: column;
}

.secPrice__ttl small {
  margin-bottom: 7px;
  font-size: 16px;
  display: block;
}

@media screen and (min-width: 1024px) {
  .secPrice__ttl {
    padding: 35px 0 59px;
    margin-bottom: 29px;
    flex-direction: row;
  }
}

.secPrice__txt1 {
  margin-bottom: 15px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

.secPrice__txt2 {
  color: #008EC9;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}

.secPrice__txt2 strong {
  margin-top: 7px;
  font-size: 20px;
  line-height: 1.4;
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .secPrice__txt2 {
    font-size: 20px;
  }

  .secPrice__txt2 strong {
    font-size: 24px;
  }
}

.secPrice__list {
  padding: 0 10px;
  margin-bottom: 35px;
  display: grid;
  grid-gap: 33px;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .secPrice__list {
    width: 100%;
    max-width: 400px;
    padding: 0;
    margin: 0 auto 40px;
  }
}

@media screen and (min-width: 1024px) {
  .secPrice__list {
    padding: 0;
    margin-bottom: 51px;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 30px;
  }
}

.secPrice__listItem {
  padding: 14px 28px 27px;
  background-color: #fff;
  border: 1px solid #D9D9D9;
  position: relative;
}

@media screen and (min-width: 1200px) {
  .secPrice__listItem {
    padding: 14px 50px 27px;
  }
}

.secPrice__listItem::after {
  content: "";
  width: 100%;
  height: 34px;
  background: url(../images/intro_shadow.png) center bottom/cover no-repeat;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translate(0, 100%);
}

@media screen and (min-width: 1024px) {
  .secPrice__listItem::after {
    height: 42px;
  }
}

.secPrice__listItem_ttl {
  width: 100%;
  margin-bottom: 11px;
  color: #2B549A;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  position: relative;
}

.secPrice__listItem_img {
  width: 100%;
  padding-top: 57.143%;
  margin-bottom: 16px;
  position: relative;
}

.secPrice__listItem_txtWrap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  grid-gap: 7px;
  position: relative;
}

.secPrice__listItem_othersPrice {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
}

.secPrice__listItem_arrow {
  width: 34px;
  margin-left: 20px;
}

.secPrice__listItem_myshopPrice {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
}

.secPrice__listItem_myshopPrice .price {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
}

.secPrice__listItem_myshopPrice .price strong {
  font-size: 42px;
}

.secPrice__listItem_myshopPrice .price .edge {
  text-shadow: 0px 7px 4px rgba(0, 0, 0, 0.25);
}

.secPrice__listItem_discount {
  width: 100px;
  height: 100px;
  padding-bottom: 8px;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 8px;
  right: -3px;
  z-index: 1;
}

.secPrice__listItem_discount::before {
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(142deg, #FF0080 47%, #D8006C 50%);
  border-radius: 50%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.secPrice__listItem_discount strong {
  font-size: 32px;
  font-weight: 900;
}

.secService {
  padding: 0 0 69px;
  background: linear-gradient(180deg, transparent 14px, #2A3B6F 14px);
}

@media screen and (min-width: 768px) {
  .secService {
    padding: 0 0 80px;
    margin-top: 80px;
  }
}

.secService__inner {
  z-index: 2;
}

.secService__ttl {
  margin-bottom: 34px;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
}

.secService__ttl .edge {
  -webkit-text-stroke-color: #2A3B6F;
}

@media screen and (min-width: 768px) {
  .secService__ttl {
    margin-bottom: 32px;
    font-size: 24px;
  }
}

.secService__serviceList {
  width: 100%;
  padding: 0 10px;
  display: grid;
  grid-gap: 15px;
  grid-template-columns: repeat(2, 1fr);
}

@media screen and (min-width: 768px) {
  .secService__serviceList {
    padding: 0;
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (min-width: 1024px) {
  .secService__serviceList {
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 15px 16px;
  }
}

.secService__serviceList_item {
  background-color: #fff;
  font-size: 14px;
}

.secService__serviceList_item_img {
  width: 100%;
}

.secService__serviceList_item_txtWrap {
  width: 100%;
  padding: 8px 10px 14px;
  font-size: 12px;
  line-height: 1.4;
}

.secService__serviceList_item_ttl {
  margin-bottom: 5px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
}

@media screen and (min-width: 768px) {
  .secService__serviceList_item_txtWrap {
    padding: 20px;
    font-size: 14px;
  }

  .secService__serviceList_item_ttl {
    margin-bottom: 10px;
    font-size: 16px;
  }
}

.secFaq {
  padding: 26px 0 30px;
}

@media screen and (min-width: 768px) {
  .secFaq {
    padding: 57px 0 80px;
  }
}

.secFaq__ttl {
  margin-bottom: 30px;
  position: relative;
}

.secFaq__ttl .serif {
  width: 100%;
  color: #fff;
  font-size: 72px;
  font-weight: 400;
  text-align: center;
  display: block;
}

.secFaq__ttl .jp {
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  position: absolute;
  top: calc(50% + 6px);
  left: 50%;
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .secFaq__ttl {
    margin-bottom: 12px;
  }

  .secFaq__ttl .serif {
    font-size: 80px;
  }

  .secFaq__ttl .jp {
    font-size: 24px;
  }
}

.secFaq__list {
  width: 100%;
  margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .secFaq__list {
    max-width: 854px;
    margin: 0 auto 30px;
  }
}

.secFaq__listItem {
  width: 100%;
  display: flex;
  align-items: flex-start;
  grid-gap: 10px;
  position: relative;
}

.secFaq__listItem_img {
  width: 36px;
  margin-top: 5px;
  flex-shrink: 0;
}

.secFaq__listItem_txtWrap {
  width: 100%;
  min-height: 42px;
  display: flex;
  align-items: center;
}

.secFaq__listItem--q {
  margin-bottom: 3px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}

.secFaq__listItem--a {
  font-size: 14px;
  line-height: 1.8;
}

.secFaq__listItem--a:not(:last-child) {
  margin-bottom: 26px;
}

@media screen and (min-width: 768px) {
  .secFaq__listItem--a:not(:last-child) {
    margin-bottom: 24px;
  }
}

.secPolicy {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.7;
}

@media screen and (min-width: 768px) {
  .secPolicy__inner {
    max-width: 800px;
  }
}

.secPolicy__intro {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .secPolicy__intro {
    margin-bottom: 31px;
  }
}

.secPolicy__heading {
  margin-bottom: 13px;
  color: #124CB2;
  font-size: 18px;
  font-weight: 700;
}

.secPolicy__txt {
  margin-bottom: 30px;
}

.secPolicy__list {
  padding: 0 0 0 4px;
  margin: -20px 0 28px;
  display: block;
}

.secPolicy__list li {
  padding-left: 1.2em;
  position: relative;
}

.secPolicy__list li::before {
  content: "・";
  width: 1em;
  height: 1.7em;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

@media screen and (min-width: 768px) {
  .secPolicy__list {
    margin: 0px 0 36px;
  }
}

.secPolicy__btn {
  margin: 31px auto 65px;
}

@media screen and (min-width: 768px) {
  .secPolicy__btn {
    margin: 62px auto 80px;
  }
}

.sec404 {
  padding: 50px 0;
}

@media screen and (min-width: 768px) {
  .sec404 {
    padding: 80px 0;
  }
}

.sec404__inner {
  padding: 36px 15px 67px;
  background-color: #fff;
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  grid-gap: 16px;
}

.sec404__ttl {
  color: #124CB2;
  font-size: 312.5%;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

.sec404__txt {
  font-size: 87.5%;
  line-height: 2;
}

.sec404__btn {
  margin: 17px auto 0;
}

@media screen and (min-width: 768px) {
  .sec404 {
    padding: 0 0 180px;
  }

  .sec404__inner {
    padding: 52px 15px 51px;
  }
}

.secContactIntro {
  margin-bottom: 60px;
}

@media screen and (min-width: 768px) {
  .secContactIntro {
    margin-bottom: 80px;
  }
}

@media screen and (min-width: 768px) {
  .secContactIntro__inner {
    max-width: 800px;
  }
}

.secContactIntro__introBlk {
  width: 100%;
  height: 233px;
  margin-bottom: 40px;
  background: url(../images/contact_ttlbg.jpg) center/cover no-repeat;
  color: #fff;
  position: relative;
}

.secContactIntro__introBlk::before {
  content: "";
  width: 100%;
  height: 120px;
  background: linear-gradient(180deg, transparent 0%, #124CB2 100%);
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

@media screen and (min-width: 768px) {
  .secContactIntro__introBlk {
    height: 300px;
    margin-bottom: 73px;
  }

  .secContactIntro__introBlk::before {
    height: 180px;
  }
}

.secContactIntro__introBlk_inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

.secContactIntro__introBlk_ttl {
  margin-bottom: 23px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

.secContactIntro__introBlk_ttl strong {
  font-size: 24px;
}

.secContactIntro__introBlk_ttl .overDot::before {
  content: "・・";
}

.secContactIntro__introBlk_ttl .larger {
  font-size: 18px;
}

@media screen and (min-width: 768px) {
  .secContactIntro__introBlk_ttl {
    margin-bottom: 32px;
    font-size: 21px;
  }

  .secContactIntro__introBlk_ttl strong {
    font-size: 32px;
  }

  .secContactIntro__introBlk_ttl .larger {
    font-size: 24px;
  }
}

.secContactIntro__introBlk_opentime {
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .secContactIntro__introBlk_opentime {
    font-size: 21px;
  }
}

.secContactIntro__btn {
  width: 100%;
  max-width: 276px;
  height: 60px;
  padding: 0 5px 0 27px;
  margin: 0 auto 4px;
  background-color: #fff;
  border-radius: 30px;
  color: #263142;
  font-size: 20px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.secContactIntro__btn::before {
  content: "";
  width: 28.5px;
  height: 4px;
  background: url('data:image/svg+xml;charset=utf8,<svg width="29" height="4" viewBox="0 0 29 4" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M3.76607 2.93945C3.4297 3.57049 2.76501 4 2 4C0.895431 4 0 3.10457 0 2C0 0.895431 0.895431 0 2 0C3.08432 0 3.96709 0.862893 3.9991 1.93945H28C28.2761 1.93945 28.5 2.16331 28.5 2.43945C28.5 2.7156 28.2761 2.93945 28 2.93945H3.76607Z" fill="%23263142"/></svg>') center/contain no-repeat;
  display: block;
}

.secContactIntro__btn::after {
  content: "";
  width: 44px;
  height: 44px;
  background: #263142 url('data:image/svg+xml;charset=utf8,<svg width="44" height="44" viewBox="0 0 44 44" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M36.457 12.952C36.3826 12.7903 36.1687 12.635 36.0222 12.5266C36.0193 12.5219 36.0152 12.5172 36.0123 12.5126C36.0152 12.5167 36.0176 12.5208 36.0211 12.5249C35.8476 12.3965 35.6285 12.3098 35.3684 12.2823L25.3629 11.2148C24.4606 11.1182 23.4219 11.7503 23.0493 12.6186L15.5911 30.029C15.4364 30.3887 15.4224 30.735 15.5214 31.0238C15.5518 31.8557 16.3287 32.4978 17.0892 32.5793C17.2204 32.5933 17.3516 32.6074 17.4823 32.6215C18.2158 32.6994 18.9481 32.7779 19.6805 32.8564C21.6701 33.0685 23.6586 33.2806 25.647 33.4932C26.6787 33.6034 27.687 33.8331 28.5717 33.2261C29.553 32.5547 29.9836 31.4444 30.5812 29.9792C32.8245 24.4825 34.3953 20.5953 36.7323 15.1419C36.8641 14.8326 37.003 14.5309 36.996 14.1782C36.9796 13.7148 36.7669 13.3246 36.4564 12.9525L36.457 12.952ZM22.8184 30.3746C22.6362 30.7736 22.1324 31.0625 21.6965 31.0179C21.2618 30.974 21.0561 30.6143 21.2377 30.2147C21.4194 29.8169 21.9203 29.5275 22.355 29.572C22.7897 29.6154 22.9989 29.9768 22.8184 30.3746ZM28.4088 28.6147L18.3312 27.5396L24.4372 13.2941L34.5136 14.3698L28.4088 28.6147Z" fill="%23fff"/><path d="M11.5978 11.2386L10.8391 10.4395C9.31702 11.8813 8.13941 13.7303 7.50433 15.8805C6.86865 18.0324 6.85401 20.2218 7.34731 22.26L8.41829 21.9993C7.96892 20.1427 7.9824 18.1531 8.56183 16.1927C9.14067 14.2336 10.2116 12.5533 11.5978 11.2386Z" fill="%23fff"/><path d="M11.4865 17.0574C11.0196 18.641 11.0084 20.2545 11.3717 21.7567L12.4426 21.4954C12.1239 20.1742 12.1333 18.7605 12.544 17.3691C12.9553 15.9764 13.7163 14.7836 14.7024 13.8497L13.9442 13.0488C12.8229 14.111 11.9558 15.4714 11.4871 17.0568L11.4865 17.0574Z" fill="%23fff"/><path d="M16.5267 18.5464C16.7699 17.722 17.2222 17.019 17.8086 16.4618L17.0499 15.6621C16.3316 16.3441 15.7704 17.2153 15.4692 18.2341C15.1687 19.2523 15.1652 20.2893 15.3983 21.2513L16.4693 20.9912C16.2801 20.2061 16.2824 19.3707 16.5261 18.5469L16.5267 18.5464Z" fill="%23fff"/></svg>') center/contain no-repeat;
  border-radius: 50%;
  display: block;
}

.secContactIntro__btn img {
  width: 44px;
  height: 44px;
  border-radius: 50%;
}

@media screen and (min-width: 768px) {
  .secContactIntro__btn {
    max-width: 362px;
    height: 80px;
    margin-bottom: 13px;
    font-size: 26px;
  }

  .secContactIntro__btn::before {
    width: 34px;
    height: 5px;
  }

  .secContactIntro__btn::after {
    width: 58px;
    height: 58px;
  }
}

.secContactIntro__txt {
  font-size: 16px;
  line-height: 1.7;
}

@media screen and (min-width: 768px) {
  .secContactIntro__txt {
    text-align: center;
  }
}

.secForm {
  padding: 0 0 42px;
}

@media screen and (min-width: 768px) {
  .secForm {
    padding-bottom: 56px;
  }
}

@media screen and (min-width: 768px) {
  .secForm__inner {
    max-width: 900px;
  }
}

.secForm__formWrap {
  display: grid;
  grid-gap: 19px;
}

.secForm__inputWrap {
  width: 100%;
  display: grid;
  grid-gap: 8px;
}

.secForm__inputWrap .inputHeader {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  display: flex;
  align-items: center;
  grid-gap: 10px;
}

.secForm__inputWrap .inputHeader__required {
  padding: 3px 9px;
  background-color: #FF4800;
  border: 1px solid #FF4800;
  border-radius: 4px;
  color: #fff;
  font-size: 12px;
  line-height: 14px;
}

.secForm__inputWrap .inputHeader__required--none {
  background-color: #F3F3F3;
  border-color: #263142;
  color: #263142;
}

.secForm__inputWrap .inputBody>p {
  display: contents;
}

.secForm__inputWrap .inputBody input[type=text],
.secForm__inputWrap .inputBody input[type=tel],
.secForm__inputWrap .inputBody input[type=email],
.secForm__inputWrap .inputBody textarea {
  width: 100%;
  height: 50px;
  padding: 10px;
  background-color: #fff;
  border: 1px solid #263142;
}

.secForm__inputWrap .inputBody input[type=checkbox] {
  width: 1em;
  height: 1em;
  margin: -4px 12px 0 -16px;
  background-color: #fff;
  border: 1px solid #263142;
  display: inline-block;
}

.secForm__inputWrap .inputBody input[type=checkbox]:checked {
  background: #FF4800 url('data:image/svg+xml;charset=utf8,<svg width="12" height="10" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.6635 0.251789C12.0767 0.618201 12.1146 1.25023 11.7482 1.66346L4.79311 9.50729L0.251789 4.38568C-0.114623 3.97245 -0.0766688 3.34042 0.336563 2.97401C0.749795 2.6076 1.38182 2.64555 1.74823 3.05879L4.79311 6.49273L10.2518 0.336563C10.6182 -0.0766688 11.2502 -0.114623 11.6635 0.251789Z" fill="%23fff"/></svg>') center/7px no-repeat;
}

.secForm__inputWrap .inputBody textarea {
  height: 150px;
}

.secForm__inputWrap .inputBody--telWrap {
  display: flex;
  align-items: center;
  grid-gap: 6px;
}

.secForm__inputWrap .inputBody--file {
  position: relative;
}

.secForm__inputWrap .inputBody--file input[type=file] {
  width: 175px;
  height: 50px;
  color: transparent;
  font-size: 87.5%;
  line-height: 50px;
}

.secForm__inputWrap .inputBody--file input[type=file].dataExist {
  width: 100%;
  color: #263142;
}

.secForm__inputWrap .inputBody--file input[type=file]::file-selector-button,
.secForm__inputWrap .inputBody--file input[type=file]::-webkit-file-upload-button {
  width: 175px;
  height: 50px;
  background-color: #E3E3E3;
  border-radius: 3px;
  border: 0;
  color: #263142;
}

.secForm__inputWrap .inputBody--policy {
  padding: 20px 14px 0 0;
  font-size: 12px;
  text-align: center;
}

.secForm__inputWrap .inputBody--policy input[type=checkbox] {
  margin: 0;
}

.secForm__inputWrap .inputBody--policy a {
  text-decoration: underline;
}

.secForm__inputWrap .inputBody--policy a:hover {
  text-decoration: none;
}

.secForm__inputWrap .inputBody--submit {
  padding-top: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.secForm__inputWrap .inputBody--submit input[type=submit] {
  width: 100%;
  max-width: 355px;
  height: 63px;
  margin: 0 auto;
  background-color: #263142;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .secForm__inputWrap .inputBody--telWrap {
    max-width: 355px;
  }

  .secForm__inputWrap .inputBody--file input[type=file] {
    width: 288px;
  }

  .secForm__inputWrap .inputBody--file input[type=file]::file-selector-button,
  .secForm__inputWrap .inputBody--file input[type=file]::-webkit-file-upload-button {
    width: 288px;
  }

  .secForm__inputWrap .inputBody--policy {
    font-size: 16px;
  }
}

.secForm__contactBlk {
  padding: 8px 0;
}

.secForm__contactBlk .secContact__pointBlk_ttl {
  padding: 0 0 0 25px;
  margin-bottom: 9px;
  color: #124CB2;
  display: block;
  grid-gap: 16px;
  text-align: left;
  position: relative;
}

.secForm__contactBlk .secContact__pointBlk_ttl::before {
  content: "";
  width: 6px;
  height: 6px;
  background-color: #124CB2;
  border-radius: 50%;
  display: block;
  position: absolute;
  top: 17px;
  left: 10px;
}

.secForm__contactBlk .secContact__pointBlk_ttl sup {
  font-size: 60%;
}

.secForm__contactBlk .secContact__pointBlk_ttl small {
  margin: 6px 0 -6px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  display: block;
}

@media screen and (min-width: 768px) {
  .secForm__contactBlk .secContact__pointBlk_ttl {
    padding-left: 16px;
  }

  .secForm__contactBlk .secContact__pointBlk_ttl::before {
    top: 16px;
    left: 0px;
  }
}

.secForm__contactBlk .secContact__pointBlk_box {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .secForm__contactBlk .secContact__pointBlk_box {
    width: calc(50% - 20px);
    padding: 34px 15px 30px;
    margin: 0;
  }

  .secForm__contactBlk .secContact__pointBlk_box+.secContact__pointBlk_box {
    margin-top: 0;
    align-self: stretch;
  }

  .secForm__contactBlk .secContact__pointBlk_box_img {
    max-width: 335px;
    margin: 0 auto;
  }

  .secForm__contactBlk .secContact__pointBlk_box_img:not(:first-child) {
    margin-top: 20px;
  }

  .secForm__contactBlk .secContact__pointBlk_box ul {
    max-width: 295px;
    margin: 11px auto 0;
  }
}

@media screen and (min-width: 768px) {
  .secForm__contactBlk .secContact__pointBlk_img {
    width: 39.5%;
    margin-bottom: 0;
  }

  .secForm__contactBlk .secContact__pointBlk_img--center {
    width: 100%;
    margin-top: 24px;
  }

  .secForm__contactBlk .secContact__pointBlk_img--center img {
    max-width: 358px;
    margin: 0 auto -27px;
    position: relative;
    z-index: 1;
  }
}

.secForm__contactBlk .secContact__pointBlk_table {
  margin-bottom: 50px;
}

.secForm__contactBlk .secContact__pointBlk_table thead td {
  padding: 5px 10px;
  font-size: 14px;
}

.secForm__contactBlk .secContact__pointBlk_table tbody td {
  font-size: 14px;
}

@media screen and (min-width: 768px) {
  .secForm__contactBlk .secContact__pointBlk_table {
    width: 57%;
    max-width: 505px;
    margin-bottom: 60px;
  }
}

.secForm__contactBlk_txt {
  width: 100%;
}

.secForm__contactBlk_txt span {
  width: 100%;
  max-width: 355px;
  margin: 0 0 29px;
  background-color: #FF4800;
  border-radius: 30px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  display: block;
}

.secForm__policyTxt {
  text-align: center;
  align-content: center;
}

.secForm__policyTxt--link {
  text-decoration: underline;
  display: inline-flex;
  align-items: center;
  gap: .2em;
  transition: all .2s;
}

.secForm__policyTxt--link:hover {
  color: #FF4800;
}

.secForm__policyTxt--link::after {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  background: url(../images/icon_open-in-new.svg) no-repeat center/contain;
}

.page--thanks .pageTtlBlk {
  padding: 40px 0 42px;
  color: #263142;
  font-size: 20px;
  line-height: 1.7;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .page--thanks .pageTtlBlk {
    padding: 81px 0 34px;
    font-size: 32px;
    line-height: 1.3;
  }

  .page--thanks .pageTtlBlk br.disp_sp {
    display: block !important;
  }
}

.page--thanks .secPage p {
  font-size: 16px;
  line-height: 1.6;
}

.page--thanks .secPage__btn {
  margin: 60px auto 65px;
}

.secPage__btn {
  margin: 60px auto 65px;
}

@media screen and (min-width: 768px) {
  .page--thanks .secPage p {
    text-align: center;
  }

  .page--thanks .secPage__btn {
    margin: 80px auto;
  }
}

/*2025/01/27　構築チェック修正*/
/*動的マップ　ここから*/
.common__dynamicMap {
  position: relative;
}

.common__dynamicMap--cont {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  font-size: 24px;
  font-weight: 800;
  color: #fff;
  --stroke: #0376eb;
  text-shadow: 0.15em 0 0 var(--stroke), -0.15em 0 0 var(--stroke), 0 0.15em 0 var(--stroke), 0 -0.15em 0 var(--stroke), 0.1em 0.1em 0 var(--stroke), -0.1em -0.1em 0 var(--stroke), 0.1em -0.1em 0 var(--stroke), -0.1em 0.1em 0 var(--stroke), 0.07em 0.15em 0 var(--stroke), -0.07em -0.15em 0 var(--stroke), 0.15em -0.07em 0 var(--stroke), -0.15em 0.07em 0 var(--stroke), 0.15em 0.07em 0 var(--stroke), -0.15em -0.07em 0 var(--stroke), 0.07em -0.15em 0 var(--stroke), -0.07em 0.15em 0 var(--stroke), 0.13em 0.05em 0 var(--stroke), -0.13em -0.05em 0 var(--stroke), 0.05em -0.13em 0 var(--stroke), -0.05em 0.13em 0 var(--stroke), 0.05em 0.13em 0 var(--stroke), -0.05em -0.13em 0 var(--stroke), 0.13em -0.05em 0 var(--stroke), -0.13em 0.05em 0 var(--stroke), 0 0 5px #000, 0 0 5px #000, 0 0 5px #000;
  align-content: center;
  text-align: center;
  letter-spacing: .1em;
}

.common__dynamicMap--img {
  max-width: 300px;
  max-height: 240px;
  width: auto;
  height: auto;
  margin: 0 auto;
  display: block;
}

/*動的マップ　ここまで*/
/*動的MV　ここから*/
.secNewMV {
  position: relative;
  font-size: 4vw;
}

@media screen and (min-width: 768px) {
  .secNewMV {
    font-size: 1.6vw;
  }

}

.secMV__gridItem {
  align-content: end;
}

.secNewMV img{
  pointer-events: none;
}

.secNewMV strong {
  font-size: 1.3em;
}

.secNewMV .silver {
  color: #cfcfcf;
}

.secNewMV .pink {
  color: #ff0080;
}

.secMV__wrapper {
  position: absolute;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  align-content: center;
}

.secMV__cont {
  display: flex;
  flex-direction: column;
  width: 95%;
  margin: auto;
  height: 94%;
  gap: 8vw;
}

@media screen and (min-width: 768px) {
  .secMV__cont {
    display: grid;
    grid-template-columns: 5fr 3fr;
    grid-template-rows: auto auto;
    gap: 0 1em;
    width: 80%;
    height: auto;
  }
}

.secMV__txt {}

@media screen and (min-width: 768px) {
  .secMV__txt {
    grid-row: 1/2;
    grid-column: 1/3;
  }

  .secMV__txt--main {
    width: 62%;
  }
}



/*--------------------*/
/*.secMV__price ここから*/
/*--------------------*/

.secMV_price {
  margin-top: auto;
}

@media screen and (min-width: 768px) {

  .secMV_price {
    grid-row: 2/3;
    grid-column: 1/2;
  }
}

.secMV__txt--sub {
  font-weight: 600;
  text-align: center;
  color: #fff;
  --stroke: #ff0000;
  text-shadow: 0.15em 0 0 var(--stroke), -0.15em 0 0 var(--stroke), 0 0.15em 0 var(--stroke), 0 -0.15em 0 var(--stroke), 0.1em 0.1em 0 var(--stroke), -0.1em -0.1em 0 var(--stroke), 0.1em -0.1em 0 var(--stroke), -0.1em 0.1em 0 var(--stroke), 0.07em 0.15em 0 var(--stroke), -0.07em -0.15em 0 var(--stroke), 0.15em -0.07em 0 var(--stroke), -0.15em 0.07em 0 var(--stroke), 0.15em 0.07em 0 var(--stroke), -0.15em -0.07em 0 var(--stroke), 0.07em -0.15em 0 var(--stroke), -0.07em 0.15em 0 var(--stroke), 0.13em 0.05em 0 var(--stroke), -0.13em -0.05em 0 var(--stroke), 0.05em -0.13em 0 var(--stroke), -0.05em 0.13em 0 var(--stroke), 0.05em 0.13em 0 var(--stroke), -0.05em -0.13em 0 var(--stroke), 0.13em -0.05em 0 var(--stroke), -0.13em 0.05em 0 var(--stroke);
  font-style: italic;
  margin-bottom: .5em;
  letter-spacing: .1em;
}

.secMV__price--img {
  display: inline-block;
}

.secMV__price--img img {
  width: auto;
  height: 6em;
}

.secMV_priceList {
  display: grid;
  grid-template-columns: 5fr 6fr 6fr;
  gap: .5em;
}


.secMV__priceItem {
  text-align: center;
}

.secMV__priceTxt {
  white-space: nowrap;
  margin-top: -1.5em;
  font-size: .8em;
  --stroke: #ff0000;
  text-shadow: 0.15em 0 0 var(--stroke), -0.15em 0 0 var(--stroke), 0 0.15em 0 var(--stroke), 0 -0.15em 0 var(--stroke), 0.1em 0.1em 0 var(--stroke), -0.1em -0.1em 0 var(--stroke), 0.1em -0.1em 0 var(--stroke), -0.1em 0.1em 0 var(--stroke), 0.07em 0.15em 0 var(--stroke), -0.07em -0.15em 0 var(--stroke), 0.15em -0.07em 0 var(--stroke), -0.15em 0.07em 0 var(--stroke), 0.15em 0.07em 0 var(--stroke), -0.15em -0.07em 0 var(--stroke), 0.07em -0.15em 0 var(--stroke), -0.07em 0.15em 0 var(--stroke), 0.13em 0.05em 0 var(--stroke), -0.13em -0.05em 0 var(--stroke), 0.05em -0.13em 0 var(--stroke), -0.05em 0.13em 0 var(--stroke), 0.05em 0.13em 0 var(--stroke), -0.05em -0.13em 0 var(--stroke), 0.13em -0.05em 0 var(--stroke), -0.13em 0.05em 0 var(--stroke);
  color: #fff;
  background: linear-gradient(to bottom, transparent 50%, #ff0000 50%);
  padding: 0 .3em;
}

@media screen and (min-width: 768px) {
  .secMV__priceTxt {
    font-size: 1em;
  }
}

.secMV__price--num {
  font-weight: 800;
  font-size: 1.8em;
}

/*--------------------*/
/*.secMV__price ここまで*/
/*--------------------*/

/*------------------------*/
/*.secMV__feature ここから */
/*------------------------*/

@media screen and (min-width: 768px) {
  .secMV__feature {
    order: 1;
    grid-row: 2/3;
    grid-column: 2/3;
  }
}

.secMV__feature--cont {
  background: linear-gradient(to bottom, #fff9, #fff6);
  box-shadow: 0 0 10px #0008;
  height: max-content;
  padding: 0em .5em 1em;
}

@media screen and (min-width: 768px) {

  .secMV__feature--cont {
  background: #fffc;
}
}
.secMV__feature--title {
  background: #022dfd;
  padding: 1em;
  line-height: 1;
  border-radius: 3em;
  top: -1.5em;
  color: #fff;
  font-size: .9em;
  font-weight: 600;
  text-align: center;
  position: relative;
  letter-spacing: .1em;
  font-style: italic;
  width: max-content;
  margin: auto;
}

@media screen and (min-width: 768px) {
  .secMV__feature--title {
    font-size: .7em;
  }
}

.secMV__featureList {
  display: flex;
  justify-content: space-between;
}

.secMV__featureItem {
  width: 33%;
  text-align: center;
}

.secMV__feature--txt {
  --stroke: #fff;
  text-shadow: 0.075em 0 0 var(--stroke), -0.075em 0 0 var(--stroke), 0 0.075em 0 var(--stroke), 0 -0.075em 0 var(--stroke), 0.05em 0.05em 0 var(--stroke), -0.05em -0.05em 0 var(--stroke), 0.05em -0.05em 0 var(--stroke), -0.05em 0.05em 0 var(--stroke), 0.035em 0.075em 0 var(--stroke), -0.035em -0.075em 0 var(--stroke), 0.075em -0.035em 0 var(--stroke), -0.075em 0.035em 0 var(--stroke), 0.075em 0.035em 0 var(--stroke), -0.075em -0.035em 0 var(--stroke), 0.035em -0.075em 0 var(--stroke), -0.035em 0.075em 0 var(--stroke), 0.065em 0.025em 0 var(--stroke), -0.065em -0.025em 0 var(--stroke), 0.025em -0.065em 0 var(--stroke), -0.025em 0.065em 0 var(--stroke), 0.025em 0.065em 0 var(--stroke), -0.025em -0.065em 0 var(--stroke), 0.065em -0.025em 0 var(--stroke), -0.065em 0.025em 0 var(--stroke);
  font-weight: 600;
  letter-spacing: .2em;
  font-style: italic;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .secMV__feature--txt {
    font-size: .8em;
  }
}

.secMV__feature--title::after {
  content: "";
  display: block;
  right: 0;
  left: 0;
  height: 1em;
  background: #022dfd;
  clip-path: polygon(calc(50% - .5em) 0, calc(50% + .5em) 0, 50% 100%);
  position: absolute;
  bottom: -1em;
}

.secMV__feature--icon {
  width: 65%;
  margin: auto;
}

/*-----------------------*/
/*.secMV__feature ここまで*/
/*-----------------------*/

.secMV__img {
  width: 100%;
}

.secMV__img img {
  width: 100%;
  height: auto;
}

/*動的MV　ここまで*/


/*ヘッダーロゴ（テキスト）*/
.companyLogo {
  display: flex;
  align-items: center;
  gap: .5em;
}
.companyLogo::before{
  content: "";
  display: block;
  width: 3em;
  height: 3em;
  background: url(../images/header_logo_icon.png) no-repeat center/contain;
}
.companyLogo--txt {
  white-space: nowrap;
  font-weight: 600;
}