/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%
}

body {
  margin: 0
}

main {
  display: block
}

h1 {
  font-size: 2em;
  margin: .67em 0
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible
}

pre {
  font-family: monospace, monospace;
  font-size: 1em
}

a {
  background-color: transparent
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted
}

b, strong {
  font-weight: bolder
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em
}

small {
  font-size: 80%
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

sub {
  bottom: -0.25em
}

sup {
  top: -0.5em
}

img {
  border-style: none
}

button, input, optgroup, select, textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0
}

button, input {
  overflow: visible
}

button, select {
  text-transform: none
}

button, [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}

button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0
}

button:-moz-focusring, [type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText
}

fieldset {
  padding: .35em .75em .625em
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal
}

progress {
  vertical-align: baseline
}

textarea {
  overflow: auto
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

details {
  display: block
}

summary {
  display: list-item
}

template {
  display: none
}

[hidden] {
  display: none
}

html {
  font-size: 62.5%;
  font-size: 10px
}

body {
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
  color: #333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  background-color: #fff;
  word-break: break-all;
  overflow-x: hidden
}

body *::before, body *::after {
  margin: 0;
  box-sizing: border-box
}

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

a {
  color: #333;
  text-decoration: none
}

button {
  border: 0;
  background: transparent
}

button:hover {
  cursor: pointer
}

h1, h2, h3, h4, h5, ul, ol, dl, p, table, div, span, a {
  margin: 0;
  padding: 0;
  word-break: break-word;
  box-sizing: border-box
}

em, strong {
  font-style: normal
}

ul li, ol li {
  list-style-type: none
}

address {
  font-style: normal
}

select {
  -webkit-appearance: none;
  border: none;
  background: none
}

input, button, select {
  font-family: "Noto Sans JP", sans-serif
}

html {
  font-size: 62.5%;
  font-size: 10px
}

body {
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
  color: #333;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.8;
  background-color: #fff;
  word-break: break-all;
  overflow-x: hidden
}

body *::before, body *::after {
  margin: 0;
  box-sizing: border-box
}

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

a {
  color: #333;
  text-decoration: none
}

button {
  border: 0;
  background: transparent
}

button:hover {
  cursor: pointer
}

h1, h2, h3, h4, h5, ul, ol, dl, p, table, div, span, a {
  margin: 0;
  padding: 0;
  word-break: break-word;
  box-sizing: border-box
}

em, strong {
  font-style: normal
}

ul li, ol li {
  list-style-type: none
}

address {
  font-style: normal
}

select {
  -webkit-appearance: none;
  border: none;
  background: none
}

input, button, select {
  font-family: "Noto Sans JP", sans-serif
}

.l-header {
  width: 100%;
  background-color: #fff;
  position: sticky;
  top: 0;
  z-index: 100
}

.l-header__inner {
  max-width: 1640px;
  padding: 12px 20px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center
}

@media screen and (max-width: 767px) {
  .l-header__inner {
    padding: 10px
  }
}

.l-header__title {
  display: flex;
  align-items: center;
  margin: 0
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-header__title {
    flex-direction: column
  }
}

@media screen and (min-width: 767px) {
  .l-header__title__img {
    width: clamp(202px, 26.3020833333vw, 257px)
  }
}

@media screen and (max-width: 767px) {
  .l-header__title__img {
    display: inline-flex;
    align-items: center
  }

  .l-header__title__img img {
    max-width: 172px;
    width: 100%
  }

  .l-header__title__img a {
    display: inline-flex;
    align-items: center
  }
}

.l-header__title__sub {
  font-size: 1.2rem;
  font-weight: 400;
  margin-left: 22px
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-header__title__sub {
    flex-direction: column;
    font-size: 1rem;
    margin-left: 0;
    margin-top: 3px
  }
}

@media screen and (max-width: 767px) {
  .l-header__title__sub {
    display: none
  }
}

.l-header__nav {
  margin-left: calc((40 / 1600) * 100%)
}

.l-header__nav__list {
  display: flex;
  align-items: center;
  margin: 0
}

.l-header__nav__list__item {
  font-size: clamp(1rem, 1.3020833333vw, 1.6rem);
  font-weight: 500;
  white-space: nowrap
}

@media screen and (max-width: 767px) {
  .l-header__nav__list__item {
    display: none
  }
}

.l-header__nav__list__item+.l-header__nav__list__item {
  margin-left: clamp(10, 1.3020833333vw, 20px)
}

.l-header__nav__list__item a {
  display: block;
  padding: 10px
}

@media screen and (min-width: 1200px) {
  .l-header__nav__list__item a {
    padding: 10px 20px
  }
}

@media screen and (min-width: 767px) {
  .l-header__nav__list__item a {
    transition: .3s ease opacity
  }

  .l-header__nav__list__item a:hover, .l-header__nav__list__item a:focus {
    opacity: .7
  }
}

.l-header__nav__list__btn {
  margin-left: clamp(11px, 1.4322916667vw, 22px)
}

.l-header__nav__list__btn a {
  display: block;
  background-color: #485dff;
  border-radius: 50px;
  color: #fff;
  font-size: clamp(1.4rem, 1.8229166667vw, 1.8rem);
  font-weight: 500;
  padding: 13px clamp(24px, 3.125vw, 29px);
  position: relative;
  overflow: hidden;
  z-index: 0;
  transition: background-color .3s ease, color .3s ease;
  white-space: nowrap
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-header__nav__list__btn a>span {
    display: none
  }
}

@media screen and (max-width: 767px) {
  .l-header__nav__list__btn a {
    font-size: 1.4rem;
    padding: 7px 14px
  }
}

@media screen and (min-width: 767px) {
  .l-header__nav__list__btn a::before {
    background-color: #485dff;
    content: "";
    height: 100%;
    width: 120%;
    position: absolute;
    left: 0;
    top: 0;
    transform: skew(-15deg) translateY(0);
    transform-origin: top right;
    transition: all .3s ease;
    z-index: -1
  }

  .l-header__nav__list__btn a:hover, .l-header__nav__list__btn a:focus {
    background-color: #363435;
    color: #fff
  }

  .l-header__nav__list__btn a:hover::before, .l-header__nav__list__btn a:focus::before {
    transform: skew(-15deg) translateY(0) scaleX(0);
    transform-origin: top right
  }
}

.l-footer {
  width: 100%;
  background-color: #fff
}

.l-footer__inner {
  max-width: 1640px;
  padding: 47px 20px 54px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .l-footer__inner {
    padding: 47px 20px 30px
  }
}

.l-footer__logo {
  text-align: center
}

@media screen and (max-width: 767px) {
  .l-footer__logo img {
    width: 217px
  }
}

.l-footer__list {
  display: flex;
  justify-content: center;
  margin-top: 32px
}

@media screen and (max-width: 767px) {
  .l-footer__list {
    margin-top: 30px;
    flex-direction: column
  }
}

@media screen and (max-width: 767px) {
  .l-footer__list__item {
    text-align: center
  }
}

.l-footer__list__item a {
  font-size: 1.6rem
}

@media screen and (min-width: 767px) {
  .l-footer__list__item a {
    transition: .3s ease opacity
  }

  .l-footer__list__item a:hover, .l-footer__list__item a:focus {
    opacity: .7
  }
}

@media screen and (max-width: 767px) {
  .l-footer__list__item a {
    font-size: 1.4rem
  }
}

.l-footer__list__item+.l-footer__list__item {
  margin-left: 40px
}

@media screen and (max-width: 767px) {
  .l-footer__list__item+.l-footer__list__item {
    margin-left: 0;
    margin-top: 17px
  }
}

.l-footer__copy {
  margin-top: 67px;
  text-align: center
}

.l-footer__copy small {
  font-family: "Montserrat", sans-serif;
  font-size: 1.2rem;
  font-weight: 400
}

.l-row-narrow-nav {
  display: none;
  margin-top: 50px;
  background-color: #fffae2;
  padding: 20px 5px
}

.l-row-narrow-nav__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: -14px
}

.l-row-narrow-nav__list__item {
  margin: 14px 10px 0
}

.l-row-narrow-nav__list__item a {
  font-weight: 500;
  font-size: 1.4rem;
  padding-right: 21px;
  position: relative
}

.l-row-narrow-nav__list__item a::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 3px;
  margin-top: -4px;
  width: 7px;
  height: 7px;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  transform: rotate(45deg)
}

@media screen and (max-width: 767px) {
  .l-row-narrow-nav {
    display: block
  }
}

.l-row-mv {
  width: 100%;
  position: relative
}

@media screen and (min-width: 767px)and (max-width: 1280px) {
  .l-row-mv {
    padding-bottom: 62px
  }
}

.l-row-mv::before {
  content: "";
  display: block;
  width: 100%;
  height: calc(100% - 52px);
  background-color: #ffd802;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1
}

@media screen and (min-width: 767px)and (max-width: 1280px) {
  .l-row-mv::before {
    height: 100%
  }
}

@media screen and (max-width: 767px) {
  .l-row-mv::before {
    height: calc(100% - 96px)
  }
}

.l-row-mv__inner {
  max-width: 1360px;
  padding: 96px 40px 0;
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 767px) {
  .l-row-mv__inner {
    flex-direction: column;
    padding: 40px 20px 0
  }
}

.l-row-mv__inner__text__title {
  font-size: 5rem;
  line-height: 1.6;
  font-weight: bold
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-mv__inner__text__title {
    font-size: clamp(2.8rem, 3.6458333333vw, 5rem)
  }
}

@media screen and (max-width: 767px) {
  .l-row-mv__inner__text__title {
    text-align: center;
    font-size: clamp(1.8rem, 6.4705882353vw, 2.6rem)
  }
}

.l-row-mv__inner__text__sub {
  margin-top: 30px;
  font-size: 1.6rem;
  line-height: 1.6
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-mv__inner__text__sub {
    font-size: clamp(1.2rem, 1.5625vw, 1.6rem);
    margin-top: clamp(20px, 2.6041666667vw, 30px)
  }
}

@media screen and (max-width: 767px) {
  .l-row-mv__inner__text__sub {
    text-align: center;
    font-size: clamp(1.1rem, 3.8235294118vw, 1.4rem);
    margin-top: 15px
  }
}

.l-row-mv__inner__text__sub em {
  font-size: 2rem;
  font-weight: bold;
  margin-left: 6px
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-mv__inner__text__sub em {
    font-size: clamp(1.4rem, 1.8229166667vw, 2rem)
  }
}

@media screen and (max-width: 767px) {
  .l-row-mv__inner__text__sub em {
    font-size: clamp(1.3rem, 4.4117647059vw, 1.6rem)
  }
}

.l-row-mv__inner__text__btn {
  margin-top: 56px
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-mv__inner__text__btn {
    margin-top: clamp(30px, 3.90625vw, 56px)
  }
}

@media screen and (max-width: 767px) {
  .l-row-mv__inner__text__btn {
    margin-top: 34px;
    margin-left: 7px
  }
}

.l-row-mv__inner__img {
  flex: 1;
  padding-left: calc((32 / 768) * 100%)
}

@media screen and (max-width: 767px) {
  .l-row-mv__inner__img {
    padding: 0 15px;
    text-align: center;
    max-width: 305px;
    margin: 29px auto 0
  }
}

.l-row-mv__btn {
  position: relative;
  display: inline-block
}

@media screen and (max-width: 767px) {
  .l-row-mv__btn {
    display: block
  }
}

.l-row-mv__btn__inner {
  background-color: #485dff;
  color: #fff;
  padding: 15px 72px 21px;
  border-radius: 10px;
  display: inline-block;
  text-align: center;
  position: relative;
  overflow: hidden;
  z-index: 0;
  transition: background-color .3s ease, color .3s ease
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-mv__btn__inner {
    padding: 15px clamp(64px, 8.3333333333vw, 72px) 21px
  }
}

@media screen and (min-width: 767px) {
  .l-row-mv__btn__inner::before {
    content: "";
    background-color: #485dff;
    height: 100%;
    width: 120%;
    position: absolute;
    left: 0;
    top: 0;
    transform: skew(-15deg) translateY(0);
    transform-origin: top right;
    transition: all .3s ease;
    z-index: -1
  }
}

@media screen and (max-width: 767px) {
  .l-row-mv__btn__inner {
    display: block;
    padding: 12px clamp(30px, 14.7058823529vw, 64px) 14px
  }
}

.l-row-mv__btn__inner::after {
  content: "";
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  height: 12px;
  width: 12px;
  position: absolute;
  right: 29px;
  top: 50%;
  transform: rotate(45deg) translate(-50%, -50%)
}

@media screen and (max-width: 767px) {
  .l-row-mv__btn__inner::after {
    height: 10px;
    width: 10px;
    right: 24px
  }
}

@media screen and (min-width: 767px) {
  .l-row-mv__btn:hover .l-row-mv__btn__inner, .l-row-mv__btn:focus .l-row-mv__btn__inner {
    background-color: #363435;
    color: #fff
  }

  .l-row-mv__btn:hover .l-row-mv__btn__inner::before, .l-row-mv__btn:focus .l-row-mv__btn__inner::before {
    transform: skew(-15deg) translateY(0) scaleX(0);
    transform-origin: top right
  }
}

.l-row-mv__btn__sub {
  font-size: 1.3rem;
  display: inline-block;
  font-weight: 500;
  padding-left: 14px;
  position: relative
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-mv__btn__sub {
    font-size: clamp(1.2rem, 1.5625vw, 1.3rem)
  }
}

@media screen and (max-width: 767px) {
  .l-row-mv__btn__sub {
    font-size: clamp(1rem, 2.9411764706vw, 1.1rem);
    white-space: nowrap
  }
}

.l-row-mv__btn__sub::before, .l-row-mv__btn__sub::after {
  content: "";
  display: block;
  position: absolute;
  top: 1px;
  width: 1px;
  height: 18px;
  background-color: #fff
}

@media screen and (max-width: 374px) {
  .l-row-mv__btn__sub::before, .l-row-mv__btn__sub::after {
    top: 8px
  }
}

.l-row-mv__btn__sub::before {
  left: 0;
  transform: rotate(-18deg)
}

.l-row-mv__btn__sub::after {
  left: 6px;
  transform: rotate(-18deg)
}

.l-row-mv__btn__sub span {
  padding-right: 14px;
  position: relative
}

@media screen and (max-width: 374px) {
  .l-row-mv__btn__sub span {
    display: inline-block
  }
}

.l-row-mv__btn__sub span::before, .l-row-mv__btn__sub span:after {
  content: "";
  display: block;
  position: absolute;
  top: 1px;
  width: 1px;
  height: 18px;
  background-color: #fff
}

@media screen and (max-width: 374px) {
  .l-row-mv__btn__sub span::before, .l-row-mv__btn__sub span:after {
    top: 8px
  }
}

.l-row-mv__btn__sub span::before {
  right: 0;
  transform: rotate(18deg)
}

.l-row-mv__btn__sub span::after {
  right: 6px;
  transform: rotate(18deg)
}

.l-row-mv__btn__main {
  font-size: 2.4rem;
  font-weight: 700;
  display: block
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-mv__btn__main {
    font-size: clamp(1.8rem, 2.34375vw, 2.4rem)
  }
}

@media screen and (max-width: 767px) {
  .l-row-mv__btn__main {
    font-size: clamp(1.4rem, 4.7058823529vw, 1.8rem);
    white-space: nowrap
  }
}

.l-row-mv__btn__icon {
  position: absolute;
  top: -14px;
  left: -17px;
  z-index: 1
}

@media screen and (max-width: 767px) {
  .l-row-mv__btn__icon {
    width: 62px;
    height: 62px
  }
}

@media screen and (max-width: 374px) {
  .l-row-mv__btn__icon {
    width: 52px;
    height: 52px
  }
}

.l-row-cta {
  background-color: #ffd802
}

.l-row-cta__inner {
  max-width: 1320px;
  width: 100%;
  padding: 40px 40px 90px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .l-row-cta__inner {
    padding: 40px 20px 60px
  }
}

.l-row-cta__inner__text {
  text-align: center;
  font-size: 3rem;
  font-weight: 700;
  padding: 70px 0 45px;
  position: relative;
  z-index: 1
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-cta__inner__text {
    font-size: clamp(2.4rem, 3.125vw, 3rem)
  }
}

@media screen and (max-width: 767px) {
  .l-row-cta__inner__text {
    font-size: clamp(2rem, 6.4705882353vw, 2.4rem);
    padding: 52px 0 17px
  }
}

@media screen and (max-width: 374px) {
  .l-row-cta__inner__text {
    font-size: 1.9rem
  }
}

.l-row-cta__inner__text::before {
  content: "";
  display: block;
  position: absolute;
  background-image: url(../img/bg_icon_01.svg);
  width: 123px;
  height: 142px;
  background-size: contain;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1
}

@media screen and (max-width: 767px) {
  .l-row-cta__inner__text::before {
    width: 90px;
    height: 104px
  }
}

.l-row-cta__inner__btn {
  text-align: center
}

.l-row-cta__inner__btn a {
  display: inline-block;
  background-color: #485dff;
  border-radius: 50px;
  color: #fff;
  font-size: 2.6rem;
  font-weight: 500;
  width: 472px;
  padding: 26px 20px;
  position: relative;
  overflow: hidden;
  z-index: 0;
  transition: background-color .3s ease, color .3s ease
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-cta__inner__btn a {
    font-size: clamp(2rem, 2.6041666667vw, 2.6rem);
    width: clamp(357px, 45.8823529412vw, 472px);
    padding: clamp(14px, 1.8823529412vw, 19px) 10px clamp(14px, 1.8823529412vw, 19px)
  }
}

@media screen and (max-width: 767px) {
  .l-row-cta__inner__btn a {
    font-size: 1.8rem;
    width: 100%;
    padding: 17px 10px 18px;
    max-width: 100%;
    width: clamp(335px, 100vw, 353px)
  }
}

.l-row-cta__inner__btn a::before {
  background-color: #485dff;
  content: "";
  height: 100%;
  width: 120%;
  position: absolute;
  left: 0;
  top: 0;
  transform: skew(-15deg) translateY(0);
  transform-origin: top right;
  transition: all .3s ease;
  z-index: -1
}

@media screen and (max-width: 767px) {
  .l-row-cta__inner__btn a::before {
    display: none
  }
}

@media screen and (min-width: 767px) {
  .l-row-cta__inner__btn a:hover, .l-row-cta__inner__btn a:focus {
    background-color: #363435;
    color: #fff
  }

  .l-row-cta__inner__btn a:hover::before, .l-row-cta__inner__btn a:focus::before {
    transform: skew(-15deg) translateY(0) scaleX(0);
    transform-origin: top right
  }
}

.l-row-contact {
  background-color: #f8f8f8
}

.l-row-contact__inner {
  max-width: 1320px;
  width: 100%;
  padding: 100px 40px 90px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .l-row-contact__inner {
    padding: 100px 20px 90px
  }
}

.l-row-contact__inner__text {
  text-align: center;
  font-size: 1.8rem
}

@media screen and (max-width: 374px) {
  .l-row-contact__inner__text {
    font-size: 1.6rem
  }
}

.l-row-contact__inner__btn {
  text-align: center;
  margin-top: 40px
}

.l-row-contact__inner__btn a {
  display: inline-block;
  background-color: #363435;
  border: 1px solid #333;
  border-radius: 50px;
  color: #333;
  font-size: 2.6rem;
  font-weight: 500;
  width: 472px;
  padding: 26px 20px;
  position: relative;
  overflow: hidden;
  z-index: 0;
  transition: background-color .3s ease, color .3s ease, border-color .3s ease
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-contact__inner__btn a {
    font-size: clamp(2rem, 2.6041666667vw, 2.6rem);
    width: clamp(357px, 45.8823529412vw, 472px);
    padding: clamp(14px, 1.8823529412vw, 19px) 10px clamp(14px, 1.8823529412vw, 19px)
  }
}

@media screen and (max-width: 767px) {
  .l-row-contact__inner__btn a {
    font-size: 1.8rem;
    width: 100%;
    padding: 17px 10px 18px;
    max-width: 100%;
    width: clamp(335px, 100vw, 353px)
  }
}

.l-row-contact__inner__btn a::before {
  background-color: #f8f8f8;
  content: "";
  height: 100%;
  width: 120%;
  position: absolute;
  left: 0;
  top: 0;
  transform: skew(-15deg) translateY(0);
  transform-origin: top right;
  transition: all .3s ease;
  z-index: -1
}

@media screen and (min-width: 767px) {
  .l-row-contact__inner__btn a:hover, .l-row-contact__inner__btn a:focus {
    background-color: #363435;
    border: 1px solid #363435;
    color: #fff
  }

  .l-row-contact__inner__btn a:hover::before, .l-row-contact__inner__btn a:focus::before {
    transform: skew(-15deg) translateY(0) scaleX(0);
    transform-origin: top right
  }
}

.l-row-01__inner {
  max-width: 1320px;
  width: 100%;
  padding: 48px 40px 100px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .l-row-01__inner {
    padding: 60px 20px 100px
  }
}

.l-row-02__inner {
  width: 100%;
  padding-top: 100px;
  position: relative;
  z-index: 1
}

@media screen and (max-width: 767px) {
  .l-row-02__inner {
    padding-top: 0
  }
}

.l-row-03__inner {
  max-width: 1280px;
  width: 100%;
  padding: 100px 40px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .l-row-03__inner {
    padding: 100px 20px
  }
}

.l-row-03__inner__small {
  max-width: 800px;
  margin: 60px auto 0
}

@media screen and (max-width: 767px) {
  .l-row-03__inner__small {
    margin: 40px auto 0
  }
}

.l-row-04__inner {
  max-width: 1320px;
  width: 100%;
  padding: 100px 40px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .l-row-04__inner {
    padding: 100px 20px
  }
}

.l-row-05 {
  background-color: #f8f8f8
}

.l-row-05__inner {
  max-width: 1280px;
  width: 100%;
  padding: 100px 40px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .l-row-05__inner {
    padding: 100px 20px
  }
}

.l-row-05__text {
  text-align: center;
  margin-top: 30px;
  font-size: 2rem
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-05__text {
    font-size: clamp(1.6rem, 2.2135416667vw, 2rem)
  }
}

@media screen and (max-width: 767px) {
  .l-row-05__text {
    margin-top: 20px;
    font-size: 1.6rem
  }
}

.l-row-06__inner {
  max-width: 1320px;
  width: 100%;
  padding: 100px 40px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 767px) {
  .l-row-06__inner {
    padding: 100px 20px
  }
}

.l-row-06__text {
  text-align: center;
  margin-top: 30px;
  /* font-size: 2rem; */
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .l-row-06__text {
    /* font-size: clamp(1.6rem, 2.2135416667vw, 2rem); */
  }
}

@media screen and (max-width: 767px) {
  .l-row-06__text {
    margin-top: 20px;
    font-size: 1.6rem
  }
}

.l-row-06__text__em {
  font-family: "Montserrat", sans-serif;
  color: #ffbb02;
  font-size: 3.4rem;
  font-weight: 700;
  padding: 0 2px
}

@media screen and (max-width: 767px) {
  .l-row-06__text__em {
    font-size: 2.8rem
  }
}

.p-hdg-lv2 {
  text-align: center;
  outline: none
}

.p-hdg-lv2__sub {
  font-size: 1.6rem;
  font-weight: 600;
  font-family: "Montserrat", sans-serif;
  color: #ffd802;
  display: block
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-hdg-lv2__sub {
    font-size: clamp(1.4rem, 1.7647058824vw, 1.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-hdg-lv2__sub {
    font-size: 1.2rem
  }
}

.p-hdg-lv2__title {
  display: block;
  font-size: 3.6rem
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-hdg-lv2__title {
    font-size: clamp(2.4rem, 3.5294117647vw, 3.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-hdg-lv2__title {
    font-size: 2.4rem;
    line-height: 1.5;
    margin-top: 5px
  }
}

@media screen and (max-width: 374px) {
  .p-hdg-lv2__title {
    font-size: 2.2rem
  }
}

.p-hdg-lv2__title--small {
  font-size: 2.4rem
}

@media screen and (max-width: 767px) {
  .p-hdg-lv2__title--small {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-top: 5px
  }
}

.p-wrap-arrow {
  padding-top: 50px;
  margin-top: 20px;
  border-top: 3px solid #ffd802;
  position: relative
}

@media screen and (max-width: 767px) {
  .p-wrap-arrow {
    padding-top: 38px;
    margin-top: 16px
  }
}

.p-wrap-arrow::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  background-image: url(../img/bg_triangle_01.svg);
  transform: translateX(-50%);
  width: 73px;
  height: 17px;
  background-size: contain;
  background-repeat: no-repeat;
  margin-top: -3px
}

.p-text-catch {
  margin-top: 50px;
  text-align: center;
  font-size: 3.6rem;
  font-weight: 700
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-text-catch {
    font-size: clamp(2.4rem, 3.125vw, 3.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-text-catch {
    font-size: 2.4rem;
    line-height: 1.6
  }
}

@media screen and (max-width: 374px) {
  .p-text-catch {
    font-size: 2rem
  }
}

.p-text {
  margin-top: 43px;
  text-align: center
}

@media screen and (max-width: 767px) {
  .p-text {
    margin-top: 21px
  }
}

.p-feature-wrap {
  position: relative;
  z-index: 0
}

.p-feature-wrap::before {
  content: "";
  position: absolute;
  z-index: -1;
  border-style: solid;
  border-width: 0 0 35.75vw 100vw;
  border-color: transparent transparent #f8f8f8 transparent;
  width: 100vw;
  height: auto;
  bottom: -34px
}

@media screen and (max-width: 767px) {
  .p-feature-wrap::before {
    border-width: 0 0 58.133vw 100vw;
    bottom: 120px
  }
}

@media screen and (max-width: 767px) {
  .p-feature-wrap::after {
    content: "";
    position: absolute;
    z-index: -1;
    background-color: #f8f8f8;
    width: 100vw;
    height: 130px;
    bottom: -10px
  }
}

.p-feature-01 {
  margin-top: 80px
}

@media screen and (max-width: 767px) {
  .p-feature-01 {
    margin-top: 0
  }
}

.p-feature-01__inner {
  max-width: 1027px;
  padding: 0 50px;
  margin: 0 auto;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between
}

@media screen and (max-width: 767px) {
  .p-feature-01__inner {
    flex-direction: column;
    align-items: center;
    padding: 0 20px
  }
}

.p-feature-01__text {
  width: calc((482 / 927) * 100%)
}

@media screen and (max-width: 767px) {
  .p-feature-01__text {
    width: 100%
  }
}

.p-feature-01__text__hdg {
  position: relative;
  padding-top: 100px
}

@media screen and (min-width: 767px)and (max-width: 900px) {
  .p-feature-01__text__hdg {
    padding-top: 80px
  }
}

@media screen and (max-width: 767px) {
  .p-feature-01__text__hdg {
    text-align: center;
    padding-top: 63px
  }
}

.p-feature-01__text__hdg__num {
  font-size: 21.3rem;
  font-weight: 600;
  color: rgba(51, 51, 51, .04);
  font-family: "Montserrat", sans-serif;
  position: absolute;
  top: -110px;
  left: -111px;
  z-index: 0;
  white-space: nowrap
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-feature-01__text__hdg__num {
    font-size: clamp(16rem, 21.1764705882vw, 21.3rem)
  }
}

@media screen and (min-width: 767px)and (max-width: 900px) {
  .p-feature-01__text__hdg__num {
    top: -94px;
    left: -23%
  }
}

@media screen and (max-width: 767px) {
  .p-feature-01__text__hdg__num {
    font-size: 12.5rem;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin-top: -45px
  }
}

@media screen and (max-width: 374px) {
  .p-feature-01__text__hdg__num {
    font-size: 10rem;
    margin-top: -20px
  }
}

.p-feature-01__text__hdg__text {
  font-size: 3.6rem;
  font-weight: 700;
  position: relative;
  z-index: 1
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-feature-01__text__hdg__text {
    font-size: clamp(2.4rem, 2.8235294118vw, 3.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-feature-01__text__hdg__text {
    font-size: 2.4rem
  }
}

@media screen and (max-width: 374px) {
  .p-feature-01__text__hdg__text {
    font-size: 2rem
  }
}

.p-feature-01__text__sub {
  margin-top: 23px
}

@media screen and (max-width: 767px) {
  .p-feature-01__text__sub {
    text-align: center;
    margin-top: 15px
  }
}

.p-feature-01__img {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  padding-right: 30px
}

@media screen and (min-width: 767px)and (max-width: 900px) {
  .p-feature-01__img {
    padding-right: 67px
  }
}

@media screen and (max-width: 767px) {
  .p-feature-01__img {
    padding-right: 0;
    margin-top: 40px
  }

  .p-feature-01__img img {
    width: 182px
  }
}

.p-feature-02 {
  width: 100%;
  margin-top: 80px
}

@media screen and (max-width: 767px) {
  .p-feature-02 {
    margin-top: 10px
  }
}

.p-feature-02__inner {
  max-width: 1127px;
  padding: 0 50px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-feature-02__inner {
    padding: 0 50px 0 120px
  }
}

@media screen and (max-width: 767px) {
  .p-feature-02__inner {
    flex-direction: column;
    align-items: center;
    padding: 0 20px
  }
}

.p-feature-02__text {
  width: calc((482 / 1067) * 100%)
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-feature-02__text {
    width: calc((400 / 768) * 100%)
  }
}

@media screen and (max-width: 767px) {
  .p-feature-02__text {
    width: 100%
  }
}

.p-feature-02__text__hdg {
  position: relative;
  padding-top: 152px
}

@media screen and (min-width: 767px)and (max-width: 900px) {
  .p-feature-02__text__hdg {
    padding-top: 63px
  }
}

@media screen and (max-width: 767px) {
  .p-feature-02__text__hdg {
    text-align: center;
    padding-top: 63px
  }
}

.p-feature-02__text__hdg__num {
  font-size: 21.3rem;
  font-weight: 600;
  color: rgba(51, 51, 51, .04);
  font-family: "Montserrat", sans-serif;
  position: absolute;
  top: -70px;
  left: -120px;
  z-index: 0;
  white-space: nowrap
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-feature-02__text__hdg__num {
    font-size: clamp(16rem, 21.1764705882vw, 21.3rem)
  }
}

@media screen and (min-width: 767px)and (max-width: 900px) {
  .p-feature-02__text__hdg__num {
    top: -99px;
    left: -90px
  }
}

@media screen and (max-width: 767px) {
  .p-feature-02__text__hdg__num {
    font-size: 12.5rem;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin-top: -45px
  }
}

@media screen and (max-width: 374px) {
  .p-feature-02__text__hdg__num {
    font-size: 10rem;
    margin-top: -20px
  }
}

.p-feature-02__text__hdg__text {
  font-size: 3.6rem;
  font-weight: 700;
  position: relative;
  z-index: 1
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-feature-02__text__hdg__text {
    font-size: clamp(2.4rem, 2.8235294118vw, 3.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-feature-02__text__hdg__text {
    font-size: 2.4rem
  }
}

@media screen and (max-width: 374px) {
  .p-feature-02__text__hdg__text {
    font-size: 2rem
  }
}

.p-feature-02__text__sub {
  margin-top: 23px
}

@media screen and (max-width: 767px) {
  .p-feature-02__text__sub {
    text-align: center;
    margin-top: 15px
  }
}

.p-feature-02__img {
  flex: 1;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  padding-left: 30px
}

@media screen and (min-width: 767px)and (max-width: 900px) {
  .p-feature-02__img {
    padding-left: 36px
  }
}

@media screen and (max-width: 767px) {
  .p-feature-02__img {
    padding-left: 0;
    margin-top: 40px
  }

  .p-feature-02__img img {
    width: 222px
  }
}

.p-feature-03 {
  background-color: #f8f8f8;
  padding: 20px 0 100px;
  margin-top: 34px
}

@media screen and (max-width: 767px) {
  .p-feature-03 {
    margin-top: 10px
  }
}

.p-feature-03__inner {
  max-width: 1300px;
  padding: 0 50px;
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .p-feature-03__inner {
    flex-direction: column;
    align-items: center;
    padding: 0 20px
  }
}

.p-feature-03__text {
  width: calc((750 / 1200) * 100%);
  margin: 0 auto
}

@media screen and (max-width: 767px) {
  .p-feature-03__text {
    width: 100%
  }
}

.p-feature-03__text__hdg {
  position: relative;
  padding-top: 110px;
  text-align: center
}

@media screen and (max-width: 767px) {
  .p-feature-03__text__hdg {
    text-align: center;
    padding-top: 63px
  }
}

.p-feature-03__text__hdg__num {
  font-size: 21.3rem;
  font-weight: 600;
  color: rgba(51, 51, 51, .04);
  font-family: "Montserrat", sans-serif;
  position: absolute;
  top: -100px;
  left: 50%;
  z-index: 0;
  transform: translateX(-50%);
  white-space: nowrap
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-feature-03__text__hdg__num {
    font-size: clamp(16rem, 21.1764705882vw, 21.3rem)
  }
}

@media screen and (max-width: 767px) {
  .p-feature-03__text__hdg__num {
    font-size: 12.5rem;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    margin-top: -45px
  }
}

@media screen and (max-width: 374px) {
  .p-feature-03__text__hdg__num {
    font-size: 10rem;
    margin-top: -20px
  }
}

.p-feature-03__text__hdg__text {
  font-size: 3.6rem;
  font-weight: 700;
  position: relative;
  z-index: 1
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-feature-03__text__hdg__text {
    font-size: clamp(2.4rem, 2.8235294118vw, 3.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-feature-03__text__hdg__text {
    font-size: 2.4rem
  }
}

@media screen and (max-width: 374px) {
  .p-feature-03__text__hdg__text {
    font-size: 2rem
  }
}

.p-feature-03__text__sub {
  margin-top: 23px;
  text-align: center
}

@media screen and (max-width: 767px) {
  .p-feature-03__text__sub {
    text-align: center;
    margin-top: 15px
  }
}

.p-list-note {
  margin-top: 20px
}

.p-list-note__item {
  font-size: 1.2rem;
  color: #777
}

.p-table-scroll {
  margin-top: 40px
}

@media screen and (max-width: 767px) {
  .p-table-scroll {
    margin-top: 34px;
    position: relative;
    margin: 30px -24px 0 0;
    overflow: auto
  }
}

.p-table {
  width: 100%;
  border-collapse: collapse
}

@media screen and (max-width: 767px) {
  .p-table {
    position: relative;
    width: 768px;
    padding: 0 24px;
    margin-right: 24px
  }
}

@media screen and (max-width: 600px) {
  .p-table {
    width: 525px
  }
}

.p-table th, .p-table td {
  text-align: center;
  vertical-align: middle;
  word-wrap: break-word
}

.p-table>thead tr .p-table__th {
  background-color: #ffd802;
  font-size: 2.6rem;
  font-weight: 700;
  padding: 16px 10px;
  color: #333
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-table>thead tr .p-table__th {
    font-size: clamp(16px, 2.3529411765vw, 2.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-table>thead tr .p-table__th {
    font-size: 1.6rem;
    padding: 20px 9px
  }
}

.p-table>thead tr th {
  background-color: #ededed;
  font-size: 1.8rem;
  font-weight: 500;
  padding: 16px 10px;
  border: 1px solid #ddd;
  color: #666
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-table>thead tr th {
    font-size: clamp(1.6rem, 2vw, 1.8rem)
  }
}

@media screen and (max-width: 767px) {
  .p-table>thead tr th {
    font-size: 1.6rem;
    padding: 20px 9px
  }
}

.p-table>thead tr td {
  background-color: transparent
}

.p-table>tbody th, .p-table>tbody td {
  font-size: 1.6rem;
  padding: 20px;
  border: 1px solid #ddd
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-table>tbody th, .p-table>tbody td {
    font-size: clamp(14px, 1.6470588235vw, 1.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-table>tbody th, .p-table>tbody td {
    font-size: 1.4rem;
    padding: 8px
  }
}

.p-table>tbody tr th.p-table__th {
  background-color: #ffee93;
  text-align: left;
  font-weight: 700
}

@media screen and (max-width: 1120px) {
  .p-table>tbody tr th.p-table__th span {
    display: block
  }
}

.p-table>tbody tr td {
  white-space: nowrap;
  background-color: #fff
}

.p-table>tbody tr td.p-table__th {
  background-color: #fffae2
}

.p-table__size1 {
  width: calc((180 / 1200) * 100%)
}

@media screen and (max-width: 767px) {
  .p-table__size1 {
    width: calc((127 / 668) * 100%);
    min-width: 127px
  }
}

@media screen and (max-width: 400px) {
  .p-table__size1 {
    width: calc((88 / 375) * 100%);
    min-width: 88px
  }
}

.p-table__size2 {
  width: calc((438 / 1200) * 100%)
}

@media screen and (max-width: 767px) {
  .p-table__size2 {
    width: calc((217 / 668) * 100%);
    min-width: 217px
  }
}

@media screen and (max-width: 400px) {
  .p-table__size2 {
    width: calc((142 / 375) * 100%);
    min-width: 142px
  }
}

.p-table__size3 {
  width: calc((193 / 1200) * 100%)
}

@media screen and (max-width: 767px) {
  .p-table__size3 {
    width: calc((108 / 668) * 100%);
    min-width: 108px
  }
}

@media screen and (max-width: 400px) {
  .p-table__size3 {
    width: calc((90 / 375) * 100%);
    min-width: 90px
  }
}

.p-table__rank {
  color: #ff5800;
  font-size: 2rem;
  font-weight: 700;
  min-width: 156px;
  padding-left: 40px;
  display: inline-block;
  text-align: center;
  position: relative;
}

.p-table__rank--wauto {
  padding-left: 0;
  width: auto;
}

@media screen and (max-width: 767px) {
  .p-table__rank {
    font-size: 1.6rem;
    min-width: 100px;
  }

  .p-table__rank--wauto {
    padding-left: 0;
    width: auto;
  }
}

.p-table__rank::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-image: url("../img/icon_crown_01.svg");
  background-repeat: no-repeat;
  background-size: contain;
  width: 39px;
  height: 32px;
}

@media screen and (max-width: 767px) {
  .p-table__rank::before {
    width: 26px;
    height: 21px;
    top: 2px;
  }
}

.p-table__rank--line {
  color: #333;
}

.p-table__rank--line::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 104px;
  height: 2px;
  background-color: #ff5800;
  margin-left: 20px;
}

@media screen and (max-width: 767px) {
  .p-table__rank--line::after {
    width: 70px;
  }
}

.p-table__rank--small {
  width: 112px;
  font-size: 1.6rem;
  padding-left: 30px;
}

@media screen and (max-width: 767px) {
  .p-table__rank--small {
    font-size: 1.4rem;
    width: 88px;
    padding-left: 10px;
  }
}

.p-table__rank--small::before {
  width: 30px;
  height: 24px;
}

@media screen and (max-width: 767px) {
  .p-table__rank--small::before {
    width: 18px;
    height: 14px;
    top: 4px;
  }
}

.p-table__strong {
  display: flex;
  align-items: center;
  justify-content: center
}

.p-table__strong__icon {
  color: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  background-color: #ff5800;
  display: inline-block;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-table__strong__icon {
    font-size: clamp(1rem, 1.2941176471vw, 1.4rem);
    width: clamp(42px, 4.9411764706vw, 58px);
    height: clamp(42px, 4.9411764706vw, 58px)
  }
}

@media screen and (max-width: 767px) {
  .p-table__strong__icon {
    width: 39px;
    height: 39px;
    font-size: 1rem
  }
}

.p-table__strong__num {
  font-size: 3.8rem;
  color: #ff5800;
  font-weight: bold;
  margin-left: 10px
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-table__strong__num {
    font-size: clamp(2.6rem, 3.5294117647vw, 3.8rem)
  }
}

@media screen and (max-width: 767px) {
  .p-table__strong__num {
    font-size: 2.2rem;
    margin-left: 5px
  }
}

.p-panel {
  background-color: #fffae2;
  padding: 26px calc((99 / 800) * 100%) 31px calc((115 / 800) * 100%);
  display: flex
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-panel {
    padding: 26px clamp(40px, 5.2941176471vw, 99px) 31px clamp(40px, 5.2941176471vw, 112px)
  }
}

@media screen and (max-width: 767px) {
  .p-panel {
    padding: 20px
  }
}

.p-panel__img {
  padding-right: 31px
}

@media screen and (max-width: 767px) {
  .p-panel__img {
    padding-right: 0px;
    margin-right: 15px;
    width: 72px
  }
}

.p-panel__text {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  flex: 1
}

.p-panel__text__label {
  font-size: 1.6rem
}

.p-panel__text__sub {
  font-size: 1.2rem;
  color: #777;
  word-break: break-word
}

@media screen and (max-width: 767px) {
  .p-panel__text__sub {
    margin-top: 5px
  }
}

.p-point {
  margin-top: 60px;
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 980px) {
  .p-point {
    margin-top: 40px;
    flex-direction: column
  }
}

.p-point__item {
  width: calc((580 / 1200) * 100%)
}

@media screen and (max-width: 980px) {
  .p-point__item {
    width: 100%
  }
}

@media screen and (max-width: 980px) {
  .p-point__item+.p-point__item {
    margin-top: 60px
  }
}

.p-point__item__title {
  text-align: center;
  margin-bottom: 50px;
  border-bottom: 3px solid #ffd802;
  position: relative;
  word-break: break-word
}

@media screen and (max-width: 767px) {
  .p-point__item__title {
    margin-bottom: 38px
  }
}

.p-point__item__title--size01 {
  padding: 0 40px 30px
}

@media screen and (max-width: 767px) {
  .p-point__item__title--size01 {
    padding: 0 0 16px
  }
}

.p-point__item__title--size02 {
  padding: 0 0 30px
}

@media screen and (min-width: 767px)and (max-width: 980px) {
  .p-point__item__title--size02 {
    padding: 0 90px 30px
  }
}

@media screen and (max-width: 767px) {
  .p-point__item__title--size02 {
    padding: 0 0 16px
  }
}

.p-point__item__title::before {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  left: 50%;
  background-image: url(../img/bg_triangle_02.svg);
  transform: translateX(-50%);
  width: 65px;
  height: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  margin-top: -1px
}

.p-point__item__title__sub {
  font-family: "Montserrat", sans-serif;
  font-size: 2.9rem;
  color: #ffd802;
  display: block
}

@media screen and (max-width: 767px) {
  .p-point__item__title__sub {
    font-size: 1.8rem
  }
}

.p-point__item__title__main {
  font-size: 2.4rem;
  font-weight: 700
}

@media screen and (max-width: 980px) {
  .p-point__item__title__main {
    font-size: 2rem
  }
}

@media screen and (max-width: 767px) {
  .p-point__item__title__main {
    font-size: 1.8rem
  }
}

@media screen and (max-width: 374px) {
  .p-point__item__title__main {
    font-size: 1.6rem
  }
}

.p-point__item__title__main__em, .p-point__item__title__main__em2 {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 3.4rem;
  padding: 0 3px
}

@media screen and (max-width: 767px) {
  .p-point__item__title__main__em, .p-point__item__title__main__em2 {
    font-size: 2.4rem
  }
}

.p-point__item__title__main__em {
  color: #ff5800
}

.p-point__item__title__main__em2 {
  color: #ffbb02
}

.p-point__item__img {
  text-align: center
}

.p-panel-col {
  display: flex;
  flex-wrap: wrap
}

@media screen and (max-width: 767px) {
  .p-panel-col {
    flex-direction: column
  }
}

.p-panel-col__item {
  width: calc((390 / 800) * 100%);
  background-color: #f8f8f8;
  margin-top: 20px;
  padding: 26px
}

@media screen and (max-width: 767px) {
  .p-panel-col__item {
    width: 100%;
    padding: 20px;
    margin-top: 20px
  }
}

.p-panel-col__item:first-child, .p-panel-col__item:nth-child(2) {
  margin-top: 0
}

@media screen and (max-width: 767px) {
  .p-panel-col__item:nth-child(2) {
    margin-top: 20px
  }
}

.p-panel-col__item:nth-child(even) {
  margin-left: calc((20 / 800) * 100%)
}

@media screen and (max-width: 767px) {
  .p-panel-col__item:nth-child(even) {
    margin-left: 0
  }
}

.p-panel-col__item--em {
  background-color: #fffae2
}

.p-panel-col__item--em .p-panel-col__item__list {
  color: #333
}

.p-panel-col__item__list {
  font-size: 1.2rem;
  color: #777
}

.p-panel-col__item__list dd {
  margin-left: 0
}

.p-media-col {
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin-top: 60px
}

@media screen and (max-width: 767px) {
  .p-media-col {
    margin-top: 40px;
    flex-direction: column
  }
}

.p-media-col+.p-media-col {
  margin-top: 60px
}

@media screen and (max-width: 767px) {
  .p-media-col+.p-media-col {
    margin-top: 40px
  }
}

.p-media-col--reverse {
  flex-direction: row-reverse
}

@media screen and (max-width: 767px) {
  .p-media-col--reverse {
    flex-direction: column
  }
}

.p-media-col__item--size01 {
  width: calc((530 / 1200) * 100%)
}

.p-media-col__item--size02 {
  width: calc((600 / 1200) * 100%)
}

.p-media-col__item--size03 {
  width: calc((550 / 1200) * 100%)
}

@media screen and (max-width: 767px) {
  .p-media-col__item--size01, .p-media-col__item--size02, .p-media-col__item--size03 {
    width: 100%
  }
}

.p-media-col__item__title {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.6
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-media-col__item__title {
    font-size: clamp(2.4rem, 3.2941176471vw, 3.6rem)
  }
}

@media screen and (max-width: 767px) {
  .p-media-col__item__title {
    font-size: 2.4rem
  }
}

@media screen and (max-width: 374px) {
  .p-media-col__item__title {
    font-size: 2.2rem
  }
}

.p-media-col__item__text {
  margin-top: 42px;
  font-size: 1.6rem
}

@media screen and (max-width: 767px) {
  .p-media-col__item__text {
    margin-top: 16px
  }
}

.p-media-col__item__text+.p-media-col__item__text {
  margin-top: 30px
}

@media screen and (max-width: 767px) {
  .p-media-col__item__text+.p-media-col__item__text {
    margin-top: 16px
  }
}

.p-media-col__img--size01 {
  width: calc((611 / 1200) * 100%);
  margin-left: calc((60 / 1200) * 100%)
}

@media screen and (max-width: 767px) {
  .p-media-col__img--size01 {
    width: 100%;
    text-align: right
  }

  .p-media-col__img--size01 img {
    width: calc((315 / 375) * 100%)
  }
}

.p-media-col__img--size02 {
  width: calc((539 / 1200) * 100%);
  margin-right: calc((60 / 1200) * 100%)
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-media-col__img--size02 {
    margin-right: clamp(66px, 8.2352941176vw, 111px)
  }
}

@media screen and (max-width: 767px) {
  .p-media-col__img--size02 {
    width: 100%;
    text-align: left
  }

  .p-media-col__img--size02 img {
    width: calc((303 / 375) * 100%)
  }
}

.p-media-col__img--size03 {
  width: calc((590 / 1200) * 100%);
  margin-left: calc((60 / 1200) * 100%)
}

@media screen and (max-width: 767px) {
  .p-media-col__img--size03 {
    width: 100%;
    text-align: right
  }

  .p-media-col__img--size03 img {
    width: calc((277 / 375) * 100%)
  }
}

@media screen and (max-width: 767px) {
  .p-media-col__img--size01, .p-media-col__img--size02, .p-media-col__img--size03 {
    margin-left: 0;
    margin-top: 30px
  }
}

.p-list-step {
  margin-top: 60px;
  display: flex;
  justify-content: space-between
}

@media screen and (max-width: 767px) {
  .p-list-step {
    margin-top: 40px;
    flex-direction: column
  }
}

.p-list-step__item {
  background-color: #ffd802;
  border-radius: 10px;
  width: calc((213 / 1200) * 100%);
  position: relative;
  padding: 23px 20px 45px;
  text-align: center
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-list-step__item {
    padding: clamp(12px, 1.7647058824vw, 23px) 8px clamp(25px, 3.5294117647vw, 45px)
  }
}

@media screen and (max-width: 767px) {
  .p-list-step__item {
    width: 100%;
    box-sizing: border-box;
    padding: 16px 20px
  }
}

.p-list-step__item+.p-list-step__item {
  margin-left: calc((34 / 1200) * 100%)
}

@media screen and (max-width: 767px) {
  .p-list-step__item+.p-list-step__item {
    margin-left: 0;
    margin-top: 22px
  }
}

.p-list-step__item+.p-list-step__item::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: calc((-133 / 1200) * 100%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16px 0 16px 16px;
  border-color: transparent transparent transparent #ffd802;
  transform: translateY(-50%)
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-list-step__item+.p-list-step__item::before {
    border-width: 9px 0 9px 9px
  }
}

@media screen and (max-width: 767px) {
  .p-list-step__item+.p-list-step__item::before {
    top: -22px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
    border-width: 12px 0 12px 12px
  }
}

.p-list-step__item__num {
  font-family: "Montserrat", sans-serif;
  font-size: 1.8rem;
  font-weight: 600;
  color: #fff
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-list-step__item__num {
    font-size: clamp(1rem, 1.5294117647vw, 1.8rem)
  }
}

@media screen and (max-width: 767px) {
  .p-list-step__item__num {
    font-size: 1.6rem
  }
}

.p-list-step__item__title {
  font-size: 1.6rem;
  font-weight: 700
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-list-step__item__title {
    font-size: clamp(1rem, 1.2941176471vw, 1.6rem)
  }
}

.p-list-step__item__img {
  margin-top: 26px
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-list-step__item__img {
    margin-top: clamp(15px, 2.1176470588vw, 26px)
  }
}

@media screen and (max-width: 767px) {
  .p-list-step__item__img {
    margin-top: 6px
  }
}

@media screen and (min-width: 767px)and (max-width: 1520px) {
  .p-list-step__item__img img {
    width: clamp(64px, 8vw, 77px);
    height: clamp(64px, 8vw, 77px)
  }
}

@media screen and (max-width: 767px) {
  .p-list-step__item__img img {
    width: 77px;
    height: 77px
  }
}

.l-row-mv.js-scroll-animation .l-row-mv__inner__text__title.animate-item-first {
  transform: translateY(40px);
  opacity: 0;
  transition: .3s ease-out transform, .3s ease-out opacity
}

.l-row-mv.js-scroll-animation .l-row-mv__inner__text__title.is-animate {
  transform: translateY(0);
  opacity: 1
}

.l-row-mv.js-scroll-animation .l-row-mv__inner__text__sub.animate-item-first {
  transform: translateY(40px);
  opacity: 0;
  transition: .3s ease-out transform, .3s ease-out opacity;
  transition-delay: .4s
}

.l-row-mv.js-scroll-animation .l-row-mv__inner__text__sub.is-animate {
  transform: translateY(0);
  opacity: 1
}

.l-row-mv.js-scroll-animation .l-row-mv__inner__text__btn.animate-item-first, .l-row-mv.js-scroll-animation .l-row-mv__inner__img.animate-item-first {
  transform: translateY(40px);
  opacity: 0;
  transition: .3s ease-out transform, .3s ease-out opacity;
  transition-delay: .8s
}

.l-row-mv.js-scroll-animation .l-row-mv__inner__text__btn.is-animate, .l-row-mv.js-scroll-animation .l-row-mv__inner__img.is-animate {
  transform: translateY(0);
  opacity: 1
}

.p-feature-01__img img.animate-item, .p-feature-02__img img.animate-item {
  transform: translateY(40px);
  opacity: 0;
  transition: .5s ease-out transform, .5s ease-out opacity
}

.p-feature-01__img img.is-animate, .p-feature-02__img img.is-animate {
  transform: translateY(0);
  opacity: 1
}

.p-point__item__img img.animate-item {
  transform: translateY(40px);
  opacity: 0;
  transition: .5s ease-out transform, .5s ease-out opacity
}

.p-point__item__img img.is-animate {
  transform: translateY(0);
  opacity: 1
}

.p-media-col__img img.animate-item {
  transform: translateY(40px);
  opacity: 0;
  transition: .5s ease-out transform, .5s ease-out opacity
}

.p-media-col__img img.is-animate {
  transform: translateY(0);
  opacity: 1
}

.p-media-col__item__title__label.animate-item {
  display: inline;
  background: linear-gradient(rgba(0, 0, 0, 0) 67%, #FFED67 0);
  background-size: 0% 100%;
  background-repeat: no-repeat;
  transition: background-size .5s ease-out;
  transition-delay: .3s
}

@media screen and (max-width: 767px) {
  .p-media-col__item__title__label.animate-item {
    background: linear-gradient(rgba(0, 0, 0, 0) 67%, #FFED67 0);
    background-size: 0% 100%;
    background-repeat: no-repeat
  }
}

.p-media-col__item__title__label.is-animate {
  background-size: 100% 100%
}

.u-nowrap {
  white-space: nowrap
}

@media screen and (min-width: 767px) {
  .u-wide-none {
    display: none
  }
}

@media screen and (max-width: 767px) {
  .u-narrow-none {
    display: none
  }
}

.u-sp-narrow-block {
  display: none
}

@media screen and (max-width: 374px) {
  .u-sp-narrow-block {
    display: block
  }
}

.content-title {
  border-bottom: 6px solid #eee;
  margin-bottom: 40px;
  padding-bottom: 20px;
  text-align: left;
  position: relative
}

@media screen and (max-width:767px) {
  .content-title {
    border-bottom-width: 4px;
    padding-bottom: 10px;
    margin-bottom: 20px
  }
}

.content-title:before {
  background-color: #ffd802;
  content: "";
  height: 6px;
  width: 200px;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%)
}

@media screen and (max-width:767px) {
  .content-title:before {
    height: 4px;
    width: 120px
  }
}

.content-title h2, .content-title h3 {
  font-size: clamp(2.8rem, 3.5294117647vw, 3.2rem);
  font-weight: 700;
  line-height: 1.2
}

@media screen and (max-width:767px) {
  .content-title h2, .content-title h3 {
    font-size: 2.4rem
  }
}

.terms {
  padding-bottom: 100px;
  text-align: left
}

.terms:last-child {
  padding-bottom: 0
}

.terms dl, .terms ol, .terms p, .terms ul {
  line-height: 1.75;
  margin-top: 1.5em
}

.terms dl:first-child, .terms ol:first-child, .terms p:first-child, .terms ul:first-child {
  margin-top: 0
}


.p-logo-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: -20px;
}

@media screen and (max-width: 767px) {
  .p-logo-list {
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 375px;
    margin: 0 auto
  }
}

.p-logo-list__item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 20px;
  width: 33%;
}

.p-logo-list__item img {
  max-width: 80%;
}

.p-logo-list__item--type1.animate-item,
.p-logo-list__item--type2.animate-item,
.p-logo-list__item--type3.animate-item,
.p-logo-list__item--type4.animate-item,
.p-logo-list__item--type5.animate-item,
.p-logo-list__item--type6.animate-item,
.p-logo-list__item--type7.animate-item,
.p-logo-list__item--type8.animate-item,
.p-logo-list__item--type9.animate-item,
.p-logo-list__item--type10.animate-item,
.p-logo-list__item--type11.animate-item,
.p-logo-list__item--type12.animate-item,
.p-logo-list__item--type13.animate-item,
.p-logo-list__item--type14.animate-item {
  transform: translateY(20px);
  opacity: 0;
  transition: 0.4s ease-out transform, 0.4s ease-out opacity
}

.p-logo-list__item--type1.is-animate,
.p-logo-list__item--type2.is-animate,
.p-logo-list__item--type3.is-animate,
.p-logo-list__item--type4.is-animate,
.p-logo-list__item--type5.is-animate,
.p-logo-list__item--type6.is-animate,
.p-logo-list__item--type7.is-animate,
.p-logo-list__item--type8.is-animate,
.p-logo-list__item--type9.is-animate,
.p-logo-list__item--type10.is-animate,
.p-logo-list__item--type11.is-animate,
.p-logo-list__item--type12.is-animate,
.p-logo-list__item--type13.is-animate,
.p-logo-list__item--type14.is-animate {
  transform: translateY(0);
  opacity: 1
}

/* .p-logo-list__item--type2.animate-item {
  transition-delay: 0.1s
} */
/* .p-logo-list__item--type3.animate-item {
  transition-delay: 0.2s
} */
.p-logo-list__item--type4.animate-item {
  transition-delay: 0.1s
}

.p-logo-list__item--type5.animate-item {
  transition-delay: 0.2s
}

.p-logo-list__item--type6.animate-item {
  transition-delay: 0.0s
}

.p-logo-list__item--type7.animate-item {
  transition-delay: 0.1s
}

.p-logo-list__item--type8.animate-item {
  transition-delay: 0.2s
}

.p-logo-list__item--type9.animate-item {
  transition-delay: 0.0s
}

.p-logo-list__item--type10.animate-item {
  transition-delay: 0.1s
}

.p-logo-list__item--type11.animate-item {
  transition-delay: 0.2s
}

.p-logo-list__item--type12.animate-item {
  transition-delay: 0.0s
}

.p-logo-list__item--type13.animate-item {
  transition-delay: 0.1s
}

.p-logo-list__item--type14.animate-item {
  transition-delay: 0.2s
}

.sp {
  display: none !important;
}

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

  br.sp,
  img.sp {
    display: inline !important;
  }
}


.l-row-06_alert {
  /* display: inline-block; */
  margin: 10px auto;
  border: 1px solid #ffbb02;
  border-radius: 45px;
  background: #ffbb02;
  height: 5rem;
  overflow: hidden;
  line-height: 1;
  position: relative;
  width: 708px;
  height: 40px;
}

.font-weight-bold {
  font-weight: bold !important;
}

.pl-20 {
  padding-left: 5rem;
}

.d-flex {
  display: flex !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.align-items-center {
  align-items: center !important;
}

.bg-gray {
  background: #ededed !important;
}

.l-row-06_alert_label {
  color: #fff;
  font-weight: bold;
  background: #ffbb02;
  border-radius: 45px 0 0 45px;
  position: absolute;
  top: 11px;
  left: 30px;
}

.l-row-06_alert_text {
  background: #fff;
  position: absolute;
  right: 0;
  top: 0px;
  height: 100%;
  padding-right: 20px;
  padding-left: 20px;
  padding-top: 6px;
  font-weight: bold;
}

.l-row-06_alert_text .l-row-06__text__em {
  font-size: 2.4rem;
}

.p-table.campaign-table {
  width: 700px;
  margin: 0 auto;
}

.p-table.campaign-table>tbody tr td {
  font-size: 20px;
  padding: 10px 20px;
  line-height: 1.2;
}

.p-table.campaign-table .d-flex .l-row-06__text__em {
  padding-right: 20px;
}

.l-row-06__offer {
  position: absolute;
  right: 280px;
  top: 203px;
  background: #ff5800;
  border-radius: 50%;
  width: 80px;
  height: 80px;
  font-size: 12px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  padding: 25px 0;
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .l-row-06_alert {
    height: 30px;
    width: 360px;
  }

  .l-row-06__offer {
    right: 10px;
    top: 120px;
    font-size: 7px;
    width: 54px;
    height: 54px;
    padding: 18px 0;
  }

  .l-row-06_alert_text {
    font-size: 8px;
    padding-left: 6px;
    padding-right: 6px;
  }

  .l-row-06_alert_text .l-row-06__text__em {
    font-size: 14px;
  }

  .l-row-06_alert_label {
    font-size: 10px;
    left: 10px;
    top: 9px;
  }

  .p-table.campaign-table {
    width: 95%;
    margin: 0 auto;
    padding: 0;
  }

  .p-table.campaign-table>tbody tr td {
    font-size: 12px;
    padding: 10px;
  }

  .pl-20 {
    padding-left: 0;
  }

  .p-table.campaign-table .d-flex .l-row-06__text__em {
    padding-right: 5px;
  }

  .p-table-scroll:has(.campaign-table) {
    margin: 16px 0;
  }
}