@charset "UTF-8";
/* Structure */
html, body {
  background-color: white;
  box-sizing: border-box;
  font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

main section h2:first-child::after {
  content: none;
}

@media screen and (max-width: 768px) {
  main {
    padding-top: 0;
  }
}
@font-face {
  font-family: "MPLUSRounded1c-Bold";
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("../fonts/MPLUSRounded1c-Bold.ttf") format("truetype");
}
@keyframes kiran {
  0% {
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  30% {
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  31% {
    transform: scale(3) rotate(45deg);
    opacity: 1;
  }
  100% {
    transform: scale(90) rotate(45deg);
    opacity: 0;
  }
}
a.kiran {
  position: relative;
  overflow: hidden;
  opacity: 1;
  transition: opacity 500ms ease;
}
a.kiran::before {
  position: absolute;
  content: "";
  display: inline-block;
  top: -100px;
  left: 0;
  width: 30px;
  height: 100%;
  opacity: 0;
  background: linear-gradient(150deg, rgb(255, 255, 255) 45%, rgb(226, 211, 2) 50%, rgb(255, 246, 120) 55%, rgb(255, 255, 255) 60%);
}
a.kiran:hover {
  opacity: 0.9;
  transition: opacity 500ms ease;
}
a.kiran:hover::before {
  animation: kiran 500ms ease-in-out;
  z-index: 1;
}

/* HEADER */
header {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-image: url(https://gigaplus.makeshop.jp/Drestra/images/lp03/bg01.jpg);
}
header > div {
  width: 1000px;
  min-height: 800px;
  margin: 0 auto;
  position: relative;
  padding-top: 100px;
}
header > div h1 {
  width: 952px;
  height: 147px;
  text-indent: -9999px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/lp03/txt01.png) no-repeat;
  background-size: 100% auto;
  background-position: center center;
  margin: 0 auto;
}
header > div > img.campaign {
  position: absolute;
  width: 216px;
  height: auto;
  left: calc(50% - 92px);
  top: 32%;
}
header > div > div {
  display: flex;
}
header > div > div > div {
  width: 50%;
}
header > div > div > div h2 {
  height: auto;
  margin: 0 auto 30px auto;
}
header > div > div > div h2 img {
  width: 100%;
  height: auto;
}
header > div > div > div p {
  text-align: center;
  font-size: 2rem;
  padding: 20px 0 30px 0;
}
header > div > div > div > img {
  margin: 0 auto;
  height: auto;
}
header > div > div > div:first-child h2 {
  width: 245px;
}
header > div > div > div:first-child p {
  color: white;
}
header > div > div > div:first-child > img {
  width: 463px;
  margin-top: -90px;
}
header > div > div > div:last-child h2 {
  width: 251px;
}
header > div > div > div:last-child p {
  color: #a73561;
}
header > div > div > div:last-child > img {
  width: 356px;
  margin-top: 40px;
}

@media screen and (max-width: 1024px) {
  header {
    background-position: 52%;
  }
  header > div {
    width: 100%;
    min-height: initial;
    padding-top: 80px;
    padding-bottom: 6vw;
  }
  header > div h1 {
    width: 96%;
    height: 18vw;
  }
  header > div > img.campaign {
    width: 22vw;
    left: calc(50% - 10vw);
  }
  header > div > div > div:first-child img {
    width: 90%;
  }
  header > div > div > div:last-child img {
    width: 84%;
  }
}
@media screen and (max-width: 768px) {
  header {
    background-position: 51%;
  }
  header > div {
    padding-top: 60px;
  }
  header > div h1 {
    width: 96%;
    height: 36vw;
    background: url(https://gigaplus.makeshop.jp/Drestra/images/lp03/txt01sp-typeC.png) no-repeat;
    background-size: contain;
  }
  header > div > img.campaign {
    width: 22vw;
    left: calc(50% - 12vw);
    top: 44%;
  }
  header > div > div > div:first-child > img {
    margin-top: -7vw;
  }
}
@media screen and (max-width: 600px) {
  header {
    background: url(https://gigaplus.makeshop.jp/Drestra/images/lp03/header-sp.jpg) no-repeat center center;
    background-size: cover;
    aspect-ratio: 1024/1821;
  }
  header > div {
    display: none;
  }
}
/* MAIN */
main section.one {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-image: url(https://gigaplus.makeshop.jp/Drestra/images/lp03/bg03.jpg);
  padding: 40px 0 60px 0;
}
main section.one .container h2 {
  color: #a73561;
  text-align: center;
  font-size: 3rem;
  padding-bottom: 10px;
  margin-bottom: 0;
}
main section.one .container h2 br {
  display: none;
}
main section.one .container h2 + img {
  width: 422px;
  height: auto;
  margin: 0 auto 20px auto;
}
main section.one .container h2 + img + img {
  width: 599px;
  height: auto;
  margin: 0 auto 30px auto;
}
main section.one .container > div:first-of-type {
  padding-bottom: 30px;
  color: #cc0066;
}
main section.one .container > div:first-of-type p {
  display: flex;
  justify-content: center;
}
main section.one .container > div:first-of-type p:first-child {
  margin-bottom: 12px;
}
main section.one .container > div:first-of-type p:first-child > span {
  font-size: 2rem;
  display: block;
}
main section.one .container > div:first-of-type p:first-child > span:first-child {
  line-height: 2;
}
main section.one .container > div:first-of-type p:first-child > span:last-child {
  color: white;
  background-color: #cc0066;
  padding: 0.4em 0.8em 0.2em 0.8em;
  margin-left: 0.5em;
  font-size: 85%;
}
main section.one .container > div:first-of-type p:first-child > span:last-child span:first-child, main section.one .container > div:first-of-type p:first-child > span:last-child span:nth-child(3), main section.one .container > div:first-of-type p:first-child > span:last-child span:nth-child(5) {
  font-size: 150%;
  font-weight: 700;
}
main section.one .container > div:first-of-type p:last-child {
  font-size: 2.2rem;
}
main section.one .container > div:first-of-type p:last-child > span {
  display: block;
}
main section.one .container > div:first-of-type p:last-child > span:last-child {
  border-bottom: 2px solid #cc0066;
  margin-left: 0.5em;
}
main section.one .container > div:first-of-type p:last-child > span:last-child span:first-child, main section.one .container > div:first-of-type p:last-child > span:last-child span:nth-child(3), main section.one .container > div:first-of-type p:last-child > span:last-child span:nth-child(5), main section.one .container > div:first-of-type p:last-child > span:last-child span:nth-child(7) {
  font-size: 150%;
  font-weight: 700;
  line-height: 1;
}
main section.one .container > div > div {
  border-radius: 30px;
  background-color: rgba(255, 255, 255, 0.7);
  padding: 40px;
  position: relative;
}
main section.one .container > div > div:first-child {
  margin-bottom: 40px;
}
main section.one .container > div > div > img:first-child {
  position: absolute;
  width: 81px;
  height: auto;
  left: -12px;
  top: -12px;
}
main section.one .container > div > div h3 {
  text-align: center;
  font-weight: 700;
  font-size: 2.4rem;
  border-bottom: 2px solid #ccc;
  margin: 0 40px 30px 40px;
}
main section.one .container > div > div h3 span:nth-child(2) {
  font-size: 75%;
  font-weight: 400;
}
main section.one .container > div > div h3 span:nth-child(3) {
  font-weight: 400;
  font-size: 150%;
  padding: 0 0.2em 0 0;
}
main section.one .container > div > div h3 span:nth-of-type(6) {
  padding-left: 0.5em;
}
main section.one .container > div > div h3 br {
  display: none;
}
main section.one .container > div > div > div {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
main section.one .container > div > div > div img {
  width: 58%;
  height: auto;
}
main section.one .container > div > div > div div {
  width: 40%;
}
main section.one .container > div > div > div div p:first-of-type {
  color: #666;
  font-size: 1.8rem;
  background: url(../images/lp03/arrow02.png) no-repeat center bottom;
  background-size: 82px auto;
  padding-bottom: 40px;
  margin-bottom: 30px;
}
main section.one .container > div > div > div div p:first-of-type span:nth-of-type(2) {
  font-size: 2.4rem;
}
main section.one .container > div > div > div div p:first-of-type br {
  display: none;
}
main section.one .container > div > div > div div p:nth-of-type(2) {
  color: white;
  font-size: 2rem;
  background-color: #cc0066;
  display: inline-block;
  padding: 0.2em 1.2em;
  border-radius: 0.2em;
}
main section.one .container > div > div > div div p:nth-of-type(2) span:nth-of-type(2) {
  font-size: 1.6rem;
}
main section.one .container > div > div > div div p:nth-of-type(2) br {
  display: none;
}
main section.one .container > div > div > div div p:nth-of-type(3) {
  color: #cc0066;
  font-size: 3rem;
}
main section.one .container > div > div > div div p:nth-of-type(3) span:first-child {
  font-size: 150%;
  font-weight: 700;
}
main section.one .container > div > div a:last-child {
  display: block;
  width: 18em;
  color: white;
  text-align: center;
  padding: 0.5em 3em;
  border-radius: 8px;
  background-color: #ba9856;
  margin: 0 auto;
  font-size: 2.4rem;
  font-weight: 700;
  text-shadow: 1px 1px 0px #8a6407, -1px 1px 0px #8a6407, 1px -1px 0px #8a6407, -1px -1px 0px #8a6407, 1px 0px 0px #8a6407, 0px 1px 0px #8a6407, -1px 0px 0px #8a6407, 0px -1px 0px #8a6407;
}
main section.one .container > div > div a:last-child:not(.kiran) {
  pointer-events: none;
  color: #eee;
  background-color: #666;
  text-shadow: none;
  font-weight: 400;
}
main section.one .container > div > div:last-child > div img {
  width: 36%;
  margin: 0 12%;
}

@media screen and (max-width: 1024px) {
  main section.one .container > div > div > div {
    display: block;
  }
  main section.one .container > div > div > div img {
    width: 70%;
    margin: 0 auto;
  }
  main section.one .container > div > div > div div {
    width: 60%;
    text-align: center;
    margin: 0 auto;
  }
  main section.one .container > div > div:last-child div img {
    width: 50%;
    margin: 0 auto;
  }
  main section.one .container > div > div a:last-child {
    margin: 24px auto 0 auto;
  }
}
@media screen and (max-width: 900px) {
  main section.one .container > div:first-of-type p:last-child {
    display: block;
    text-align: center;
  }
  main section.one .container > div:first-of-type p:last-child > span:last-child {
    width: 22em;
    margin: 0 auto;
  }
  main section.one .container > div > div h3 br:first-of-type {
    display: inline;
  }
}
@media screen and (max-width: 768px) {
  main section.one .container h2 + img + img {
    width: 80%;
  }
  main section.one .container > div > div {
    padding: 30px 3vw;
  }
  main section.one .container > div > div > div img {
    width: 90%;
  }
  main section.one .container > div > div > div div {
    width: 80%;
  }
  main section.one .container > div > div:last-child div img {
    width: 70%;
  }
}
@media screen and (max-width: 600px) {
  main section.one .container h2 br {
    display: inline;
  }
  main section.one .container h2 + img {
    width: 80%;
  }
  main section.one .container h2 + img + img {
    width: 90%;
  }
  main section.one .container > div:first-of-type p:first-child {
    display: block;
    text-align: center;
  }
  main section.one .container > div:first-of-type p:first-child > span:last-child {
    width: 14em;
    margin: 0 auto;
  }
  main section.one .container > div:first-of-type p:last-child {
    font-size: 4vw;
  }
  main section.one .container > div > div h3 {
    margin: 0 10px 30px 10px;
  }
  main section.one .container > div > div > div img {
    width: 94%;
  }
  main section.one .container > div > div > div div {
    width: 90%;
  }
  main section.one .container > div > div:last-child div img {
    width: 90%;
  }
}
@media screen and (max-width: 520px) {
  main section.one .container > div > div h3 span:nth-of-type(6) {
    padding-left: 0;
  }
  main section.one .container > div > div h3 br:nth-of-type(2) {
    display: inline;
  }
}
@media screen and (max-width: 500px) {
  main section.one .container > div > div h3 {
    font-size: 5vw;
  }
  main section.one .container > div > div > div div p:first-of-type br, main section.one .container > div > div > div div p:nth-of-type(2) br {
    display: inline;
  }
  main section.one .container > div > div a:last-child {
    width: 94%;
    padding: 0.5em 0;
  }
}
@media screen and (max-width: 420px) {
  main section.one .container h2 {
    font-size: 7.6vw;
  }
  main section.one .container > div > div h3 {
    padding-top: 30px;
  }
  main section.one .container > div > div > div div {
    width: 100%;
  }
  main section.one .container > div > div > div div p:nth-of-type(3) {
    font-size: 7vw;
  }
}
@media screen and (max-width: 380px) {
  main section.one .container > div > div a:last-child {
    font-size: 7vw;
  }
}
main section.two {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-image: url(https://gigaplus.makeshop.jp/Drestra/images/lp03/bg02.jpg);
  padding: 40px 0;
}
main section.two .container h2 {
  color: #3366cc;
  text-align: center;
  font-size: 3rem;
  padding-bottom: 10px;
  margin-bottom: 0;
}
main section.two .container h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px;
}
main section.two .container h3 > span {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #3366cc;
  font-size: 3rem;
  font-weight: 400;
}
main section.two .container h3 > span:first-child span:first-child {
  display: block;
  width: 6.8rem;
  height: 6.8rem;
  line-height: 6.8rem;
  color: #cc0099;
  border: 2px solid #cc0099;
  border-radius: 50%;
  font-size: 1.4rem;
  text-align: center;
  transform: rotate(-15deg);
  margin: -1.4rem 1rem 0 0;
}
main section.two .container h3 > span:first-child span:nth-child(2) {
  font-size: 4rem;
  font-weight: 700;
}
main section.two .container h3 > span:first-child span:nth-child(4) {
  font-size: 2.4rem;
}
main section.two .container h3 > span:last-child span:first-child, main section.two .container h3 > span:last-child span:nth-child(2), main section.two .container h3 > span:last-child span:nth-child(3) {
  position: relative;
}
main section.two .container h3 > span:last-child span:first-child::before, main section.two .container h3 > span:last-child span:nth-child(2)::before, main section.two .container h3 > span:last-child span:nth-child(3)::before {
  content: "・";
  display: block;
  color: #cc0099;
  position: absolute;
  top: -2rem;
  left: 0;
}
main section.two .container > div:first-of-type, main section.two .container > div:nth-of-type(2) {
  background-color: rgba(255, 255, 255, 0.6);
  border: 1px solid #ccc;
  border-radius: 30px;
  display: flex;
  padding: 40px;
  margin-bottom: 30px;
}
main section.two .container > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(2) > div:first-of-type {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto;
  align-items: center;
  width: 70%;
  padding-right: 80px;
  background: url(../images/lp03/arrow01.png) no-repeat;
  background-position: right 30px top 50%;
  background-size: 64px auto;
}
main section.two .container > div:first-of-type > div:first-of-type p, main section.two .container > div:nth-of-type(2) > div:first-of-type p {
  grid-area: 1/2/2/3;
  color: #2763ba;
}
main section.two .container > div:first-of-type > div:first-of-type p span:first-child, main section.two .container > div:first-of-type > div:first-of-type p span:nth-child(3), main section.two .container > div:nth-of-type(2) > div:first-of-type p span:first-child, main section.two .container > div:nth-of-type(2) > div:first-of-type p span:nth-child(3) {
  font-size: 150%;
}
main section.two .container > div:first-of-type > div:first-of-type div, main section.two .container > div:nth-of-type(2) > div:first-of-type div {
  grid-area: 1/1/2/2;
  display: flex;
  align-items: center;
}
main section.two .container > div:first-of-type > div:nth-of-type(2), main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) {
  width: 30%;
}
main section.two .container > div:first-of-type > div:nth-of-type(2) p:first-child, main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) p:first-child {
  color: #3366cc;
  width: 6.4em;
  margin: 0 auto 20px auto;
  border-bottom: 2px solid #3366cc;
  text-align: center;
  font-size: 1.8rem;
}
main section.two .container > div:first-of-type > div:nth-of-type(2) p:first-child span:first-child, main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) p:first-child span:first-child {
  font-size: 120%;
}
main section.two .container > div:first-of-type > div:nth-of-type(2) p:nth-child(2), main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) p:nth-child(2) {
  color: #666;
}
main section.two .container > div:first-of-type > div:nth-of-type(2) p:last-child, main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) p:last-child {
  color: #cc0099;
}
main section.two .container > div:first-of-type > div:nth-of-type(2) p:last-child span:first-child, main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) p:last-child span:first-child {
  font-size: 200%;
}
main section.two .container > div:first-of-type > div:nth-of-type(2) p:last-child span:nth-child(2), main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) p:last-child span:nth-child(2) {
  padding-left: 0.5em;
}
main section.two .container > div:first-of-type {
  position: relative;
}
main section.two .container > div:first-of-type > img:first-child {
  position: absolute;
  width: 101px;
  height: auto;
  left: -14px;
  top: -14px;
}
main section.two .container > div:first-of-type > div:first-of-type {
  padding-left: 80px;
}
main section.two .container > div:first-of-type > div:first-of-type img:first-child, main section.two .container > div:first-of-type > div:first-of-type img:nth-child(2), main section.two .container > div:first-of-type > div:first-of-type img:nth-child(4) {
  width: 64px;
  height: auto;
}
main section.two .container > div:first-of-type > div:first-of-type img:nth-of-type(3) {
  width: 30px;
  height: auto;
}
main section.two .container > div:nth-of-type(2) > div:first-of-type {
  padding-left: 20px;
}
main section.two .container > div:nth-of-type(2) > div:first-of-type img:first-child, main section.two .container > div:nth-of-type(2) > div:first-of-type img:nth-child(2), main section.two .container > div:nth-of-type(2) > div:first-of-type img:nth-child(3), main section.two .container > div:nth-of-type(2) > div:first-of-type img:nth-of-type(5) {
  width: 64px;
  height: auto;
}
main section.two .container > div:nth-of-type(2) > div:first-of-type img:nth-of-type(4) {
  width: 30px;
  height: auto;
}
main section.two .container > div:nth-of-type(3) {
  display: flex;
  justify-content: space-between;
}
main section.two .container > div:nth-of-type(3) > div {
  width: 49%;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) {
  background-color: rgba(255, 255, 255, 0.6);
  border: 1px solid #ccc;
  border-radius: 30px;
  display: flex;
  justify-content: space-between;
  padding: 40px 0 40px 10px;
  margin-bottom: 30px;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type {
  width: 50%;
  background: url(../images/lp03/arrow01.png) no-repeat right center;
  background-size: 32px auto;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p {
  color: #3366cc;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p span:first-child, main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p span:nth-child(3), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p span:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p span:nth-child(3) {
  font-size: 150%;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type div, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type div {
  display: flex;
  align-items: center;
  padding-right: 60px;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) {
  width: 46%;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2) p:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) p:first-child {
  color: #3366cc;
  width: 6.4em;
  margin: 0 auto 20px auto;
  border-bottom: 2px solid #3366cc;
  text-align: center;
  font-size: 1.8rem;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2) p:first-child span:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) p:first-child span:first-child {
  font-size: 120%;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2) p:nth-child(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) p:nth-child(2) {
  color: #666;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2) p:last-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) p:last-child {
  color: #cc0099;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2) p:last-child span:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) p:last-child span:first-child {
  font-size: 200%;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2) p:last-child span:nth-child(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) p:last-child span:nth-child(2) {
  padding-left: 0.5em;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-child(3), main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-of-type(4), main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-of-type(6) {
  width: 48px;
  height: auto;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-child(3) {
  margin-right: -14%;
}
main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-of-type(5) {
  width: 24px;
  height: auto;
}
main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(3), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-of-type(4), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(5), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-of-type(7) {
  width: 48px;
  height: auto;
}
main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(3), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-of-type(4) {
  margin-right: -16%;
}
main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-of-type(6) {
  width: 24px;
  height: auto;
}
main section.two .container a:nth-last-child(2) {
  display: block;
  width: 18em;
  color: white;
  text-align: center;
  padding: 0.5em 3em;
  border-radius: 8px;
  background-color: #ba9856;
  margin: 0 auto;
  font-size: 2.4rem;
  font-weight: 700;
  text-shadow: 1px 1px 0px #8a6407, -1px 1px 0px #8a6407, 1px -1px 0px #8a6407, -1px -1px 0px #8a6407, 1px 0px 0px #8a6407, 0px 1px 0px #8a6407, -1px 0px 0px #8a6407, 0px -1px 0px #8a6407;
}
main section.two .container > p:last-child {
  text-align: center;
  font-size: 1.4rem;
  padding-top: 1rem;
}
main section.two .container > p:last-child a {
  text-decoration: underline;
}
main section.two .container > p:last-child br {
  display: none;
}

@media screen and (max-width: 1024px) {
  main section.two .container > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(2) > div:first-of-type {
    width: 65%;
    grid-template-columns: auto;
    grid-template-rows: auto auto;
    justify-content: center;
  }
  main section.two .container > div:first-of-type > div:first-of-type p, main section.two .container > div:nth-of-type(2) > div:first-of-type p {
    grid-area: 1/1/2/2;
    margin-bottom: 0.5em;
    text-align: center;
  }
  main section.two .container > div:first-of-type > div:first-of-type div, main section.two .container > div:nth-of-type(2) > div:first-of-type div {
    grid-area: 2/1/3/2;
  }
  main section.two .container > div:first-of-type > div:nth-of-type(2), main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) {
    width: 35%;
  }
  main section.two .container > div:nth-of-type(3) {
    display: block;
  }
  main section.two .container > div:nth-of-type(3) > div {
    width: 90%;
    margin: 0 auto;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type {
    width: 63%;
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto auto;
    justify-content: center;
    padding-right: 60px;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p {
    grid-area: 1/1/2/2;
    margin-bottom: 0.5em;
    text-align: center;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type div, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type div {
    grid-area: 2/1/3/2;
    padding-right: 0;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) {
    width: 35%;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type p:first-child + div img:nth-child(3) {
    margin-right: 0;
  }
  main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(3), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-of-type(4) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(3), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-of-type(4) {
    margin-right: -3.6%;
  }
}
@media screen and (max-width: 680px) {
  main section.two .container > div:first-of-type, main section.two .container > div:nth-of-type(2) {
    flex-direction: column;
    align-items: center;
  }
  main section.two .container > div:first-of-type > div:first-of-type, main section.two .container > div:first-of-type > div:nth-of-type(2), main section.two .container > div:nth-of-type(2) > div:first-of-type, main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) {
    width: 100%;
    padding: 0;
    background: none;
  }
  main section.two .container > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(2) > div:first-of-type {
    grid-template-rows: auto auto 80px;
  }
  main section.two .container > div:first-of-type > div:first-of-type::after, main section.two .container > div:nth-of-type(2) > div:first-of-type::after {
    content: "";
    display: block;
    width: 64px;
    height: 220px;
    background: url(../images/lp03/arrow01.png) no-repeat center center;
    background-size: contain;
    transform: rotate(90deg);
    transform-origin: 50% 50%;
    margin: 0 auto;
  }
  main section.two .container > div:first-of-type > div:nth-of-type(2) p, main section.two .container > div:nth-of-type(2) > div:nth-of-type(2) p {
    text-align: center;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) {
    flex-direction: column;
    align-items: center;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) {
    width: 100%;
    padding-right: 0;
    background: none;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type {
    grid-template-rows: auto auto 60px;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type::after, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type::after {
    content: "";
    display: block;
    width: 48px;
    height: 165px;
    background: url(../images/lp03/arrow01.png) no-repeat center center;
    background-size: contain;
    transform: rotate(90deg) translate(-50px, 0);
    transform-origin: 50% 50%;
    margin: 0 auto;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:nth-of-type(2) p, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:nth-of-type(2) p {
    text-align: center;
  }
  main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(3), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-of-type(4) {
    margin-right: 0;
  }
}
@media screen and (max-width: 600px) {
  main section.two .container h3 {
    display: block;
  }
}
@media screen and (max-width: 500px) {
  main section.two .container a:nth-last-child(2) {
    width: 94%;
    padding: 0.5em 0;
  }
}
@media screen and (max-width: 420px) {
  main section.two .container h2 {
    font-size: 7vw;
  }
  main section.two .container h3 > span {
    font-size: 7vw;
  }
  main section.two .container h3 > span:first-child span:nth-child(2) {
    font-size: 150%;
  }
  main section.two .container h3 > span:first-child span:nth-child(4) {
    font-size: 85%;
  }
  main section.two .container > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(2) > div:first-of-type {
    grid-template-rows: auto auto 18vw;
  }
  main section.two .container > div:first-of-type > div:first-of-type::after, main section.two .container > div:nth-of-type(2) > div:first-of-type::after {
    width: 15vw;
    height: 45vw;
  }
  main section.two .container > div:first-of-type {
    padding-top: 80px;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type {
    grid-template-rows: auto auto 16vw;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type > div, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type > div {
    justify-content: center;
    padding-bottom: 12px;
  }
  main section.two .container > div:nth-of-type(3) > div:first-of-type > div:first-of-type::after, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type::after {
    width: 12vw;
    height: 40vw;
  }
  main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:first-child, main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(2), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-child(3), main section.two .container > div:nth-of-type(3) > div:nth-of-type(2) > div:first-of-type p:first-child + div img:nth-of-type(4) {
    margin-right: -5%;
  }
  main section.two .container > p:last-child br {
    display: inline;
  }
}
@media screen and (max-width: 380px) {
  main section.two .container a:nth-last-child(2) {
    font-size: 7vw;
  }
}
main section.three {
  padding-bottom: 40px;
}
main section.three > h2 {
  color: #3366cc;
  text-align: center;
  font-size: 6rem;
  line-height: 350px;
  margin-bottom: 0;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  min-height: 360px;
  background: url(../images/lp03/bg05.jpg) no-repeat;
  background-size: 1000px auto;
  background-position: calc(50% + 500px) calc(50% - 80px);
}
main section.three .container > div:first-child {
  display: flex;
  align-items: center;
  padding: 30px 0;
}
main section.three .container > div:first-child p {
  width: 50%;
  line-height: 2.2;
}
main section.three .container > div:first-child img {
  width: 282px;
  height: auto;
  margin: 0 calc(25% - 142px);
}
main section.three .container h3 {
  color: #3366cc;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  min-height: 251px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img23.png) no-repeat center center;
  background-size: contain;
  padding: 50px 0 0 12%;
}
main section.three .container h3 span:first-child {
  display: block;
}
main section.three .container h3 span:nth-child(2) {
  display: inline-block;
  font-size: 220%;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/h04.png) no-repeat center bottom;
  background-size: contain;
  padding-bottom: 0.2em;
}
main section.three .container h3 span:last-child {
  display: inline-block;
  font-size: 120%;
}
main section.three .container ul {
  padding-left: 10%;
}
main section.three .container ul li {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
  align-items: center;
}
main section.three .container ul li img {
  width: 23%;
  height: auto;
  border-radius: 50%;
}
main section.three .container ul li div {
  width: 73%;
}
main section.three .container ul li div h4 {
  color: #2763ba;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-size: 2.4rem;
}
main section.three .container ul li div h4 br {
  display: none;
}

@media screen and (max-width: 768px) {
  main section.three > h2 {
    font-size: 8vw;
    min-height: 5em;
    line-height: 5em;
    background-size: auto 7em;
    background-position: calc(50% + 36vw);
  }
  main section.three .container > div:first-child {
    display: block;
  }
  main section.three .container > div:first-child p {
    width: 100%;
    padding-bottom: 2em;
  }
  main section.three .container > div:first-child img {
    width: 70%;
    margin: 0 auto;
  }
  main section.three .container ul {
    padding-left: 0;
  }
}
@media screen and (max-width: 680px) {
  main section.three .container ul li div h4 br {
    display: inline;
  }
}
@media screen and (max-width: 580px) {
  main section.three .container ul li {
    display: block;
  }
  main section.three .container ul li img {
    width: 50%;
    margin: 0 auto 2vw 10%;
  }
  main section.three .container ul li div {
    width: 100%;
  }
  main section.three .container ul li div h4 br {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  main section.three .container > h3:first-of-type {
    min-height: auto;
    background-size: cover;
    min-height: auto;
    margin-bottom: 40px;
  }
  main section.three .container > h3:first-of-type:first-of-type {
    padding: 20px 0 0 6%;
  }
  main section.three .container > h3:first-of-type:first-of-type span:first-child {
    font-size: 5vw;
  }
  main section.three .container > h3:first-of-type:first-of-type span:nth-child(2) {
    font-size: 9.8vw;
  }
  main section.three .container > h3:first-of-type:first-of-type span:last-child {
    font-size: 5.2vw;
  }
  main section.three .container ul li img {
    margin: 0 auto 2vw auto;
  }
  main section.three .container ul li div h4 br {
    display: inline;
  }
}
@media screen and (max-width: 400px) {
  main section.three .container ul li img {
    width: 60%;
  }
  main section.three .container ul li div h4 {
    font-size: 5.8vw;
  }
}
main section.four .container > div:first-child {
  background: url(../images/lp03/arrow03.png) no-repeat, linear-gradient(to bottom, #c7eff5 0%, #fff 18%, #fff);
  background-size: 70% auto, auto auto;
  background-position: center bottom, center center;
  padding-bottom: 100px;
}
main section.four .container > div:first-child h2 {
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  padding: 50px 40px 30px 40px;
}
main section.four .container > div:first-child h2 span:first-child {
  display: block;
  width: 114px;
  height: 78px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/txt07.png) no-repeat left top;
  background-size: contain;
  text-indent: -9999px;
}
main section.four .container > div:first-child h2 span:nth-child(2) {
  display: inline-block;
  color: #ff33cc;
  font-size: 280%;
  padding-left: 20px;
}
main section.four .container > div:first-child h2 span:last-child {
  display: inline-block;
  font-size: 150%;
}
main section.four .container > div:first-child > div {
  padding: 0 60px 450px 60px;
  display: flex;
  justify-content: space-between;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img09.png) no-repeat, url(https://gigaplus.makeshop.jp/Drestra/images/lp03/bg07.png) no-repeat;
  background-size: 531px auto, 90% auto;
  background-position: left 50% bottom 200px, center bottom;
  position: relative;
}
main section.four .container > div:first-child > div > div {
  width: 45%;
}
main section.four .container > div:first-child > div > div > div h3 {
  color: #2564b9;
  border-bottom: 1px solid #2564b9;
  font-size: 125%;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
}
main section.four .container > div:first-child > div > div > div:first-child {
  padding-bottom: 40px;
}
main section.four .container > div:first-child > div::before {
  content: "";
  display: block;
  position: absolute;
  width: 118px;
  height: 39px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/txt05.png) no-repeat center center;
  background-size: contain;
  left: 100px;
  bottom: 300px;
}
main section.four .container > div:first-child > div::after {
  content: "";
  display: block;
  position: absolute;
  width: 121px;
  height: 43px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/txt06.png) no-repeat center center;
  background-size: contain;
  right: 100px;
  bottom: 300px;
}
main section.four .container > div:first-child > p:last-child {
  margin-top: -160px;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  padding-left: calc(50% - 10em);
  font-family: "MPLUSRounded1c-Bold", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro";
  font-weight: 700;
  position: relative;
  z-index: 1;
  font-size: 200%;
}
main section.four .container > div:first-child > p:last-child span {
  display: block;
}
main section.four .container > div:first-child > p:last-child span:first-child {
  font-size: 180%;
  color: #d7c32f;
}
main section.four .container > div:first-child > p:last-child span:nth-child(2) {
  padding-left: 0.5em;
  padding-top: 0.5em;
  padding-right: 3em;
}
main section.four .container > div:first-child > p:last-child span:nth-child(3) {
  font-size: 180%;
  color: #ff6699;
}
main section.four .container > div:first-child > p:last-child span:last-child {
  padding-left: 0.5em;
  padding-top: 0.5em;
}
main section.four .container > div:last-child h3 {
  padding: 60px 0 80px 0;
  margin-bottom: 40px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img11.png) no-repeat, url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img11.png) no-repeat, url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img11.png) no-repeat, url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img11.png) no-repeat, url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img11.png) no-repeat, url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img11.png) no-repeat, url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img11.png) no-repeat;
  background-position: 24% top, 10% 50px, 20% 150px, left 36% bottom 10px, 58% bottom, 82% 140px, 76% 20px;
  background-size: 70px auto, 90px auto, 80px auto, 60px auto, 80px auto, 100px auto, 70px auto;
}
main section.four .container > div:last-child h3 span {
  display: block;
  text-align: center;
  font-size: 300%;
  font-weight: 400;
  font-family: "MPLUSRounded1c-Bold", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro";
}
main section.four .container > div:last-child h3 span:first-child {
  font-size: 600%;
  color: #ff6699;
  font-weight: 700;
  line-height: 1;
}
main section.four .container > div:last-child > div {
  font-family: "MPLUSRounded1c-Bold", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro";
}
main section.four .container > div:last-child > div:nth-child(2) p {
  color: #ff6699;
}
main section.four .container > div:last-child > div:nth-child(2) p:first-child {
  width: 200px;
  height: 200px;
  margin: 0 auto;
  background-color: white;
  border: 3px solid #ff6699;
  border-radius: 50%;
  text-align: center;
  padding-top: 1em;
  font-size: 125%;
}
main section.four .container > div:last-child > div:nth-child(2) p:first-child::after {
  content: "";
  display: block;
  width: 118px;
  height: 118px;
  margin: 0.5em auto 0 auto;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img11.png) no-repeat center center;
  background-size: contain;
}
main section.four .container > div:last-child > div:nth-child(2) p:last-child {
  margin-top: -100px;
  margin-left: calc(50% - 18em);
  margin-bottom: 60px;
  font-size: 115%;
  text-shadow: 2px 2px 1px #ffffff, -2px 2px 1px #ffffff, 2px -2px 1px #ffffff, -2px -2px 1px #ffffff, 2px 0px 1px #ffffff, 0px 2px 1px #ffffff, -2px 0px 1px #ffffff, 0px -2px 1px #ffffff;
  position: relative;
  z-index: 1;
}
main section.four .container > div:last-child > div:nth-child(2) p:last-child::after {
  content: "";
  display: block;
  position: absolute;
  width: 94px;
  height: 49px;
  left: 166px;
  top: -56px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/arrow01.png) no-repeat center center;
  background-size: contain;
}
main section.four .container > div:last-child > div:last-child {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}
main section.four .container > div:last-child > div:last-child > div:first-child p {
  color: #7f6298;
}
main section.four .container > div:last-child > div:last-child > div:first-child p:first-child {
  width: 200px;
  height: 200px;
  margin-right: 300px;
  background-color: white;
  border: 3px solid #7f6298;
  border-radius: 50%;
  text-align: center;
  padding-top: 1em;
  font-size: 125%;
}
main section.four .container > div:last-child > div:last-child > div:first-child p:first-child::after {
  content: "";
  display: block;
  width: 118px;
  height: 118px;
  margin: 0.5em auto 0 auto;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img12.png) no-repeat center center;
  background-size: contain;
}
main section.four .container > div:last-child > div:last-child > div:first-child p:last-child {
  font-size: 115%;
  text-shadow: 2px 2px 1px #ffffff, -2px 2px 1px #ffffff, 2px -2px 1px #ffffff, -2px -2px 1px #ffffff, 2px 0px 1px #ffffff, 0px 2px 1px #ffffff, -2px 0px 1px #ffffff, 0px -2px 1px #ffffff;
  position: relative;
  z-index: 1;
  margin: -140px 0 0 220px;
}
main section.four .container > div:last-child > div:last-child > div:first-child p:last-child::after {
  content: "";
  display: block;
  position: absolute;
  width: 52px;
  height: 94px;
  left: -40px;
  top: -70px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/arrow02.png) no-repeat center center;
  background-size: contain;
  transform: scale(-1, 1) rotate(55deg);
}
main section.four .container > div:last-child > div:last-child > div:last-child p {
  color: #91b246;
}
main section.four .container > div:last-child > div:last-child > div:last-child p:first-child {
  width: 200px;
  height: 200px;
  background-color: white;
  border: 3px solid #91b246;
  border-radius: 50%;
  text-align: center;
  padding-top: 1em;
  font-size: 125%;
}
main section.four .container > div:last-child > div:last-child > div:last-child p:first-child::after {
  content: "";
  display: block;
  width: 118px;
  height: 118px;
  margin: 0.5em auto 0 auto;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img13.png) no-repeat center center;
  background-size: contain;
}
main section.four .container > div:last-child > div:last-child > div:last-child p:last-child {
  font-size: 115%;
  text-shadow: 2px 2px 1px #ffffff, -2px 2px 1px #ffffff, 2px -2px 1px #ffffff, -2px -2px 1px #ffffff, 2px 0px 1px #ffffff, 0px 2px 1px #ffffff, -2px 0px 1px #ffffff, 0px -2px 1px #ffffff;
  position: relative;
  z-index: 1;
  margin-left: -200px;
  margin-top: -60px;
}
main section.four .container > div:last-child > div:last-child > div:last-child p:last-child::after {
  content: "";
  display: block;
  position: absolute;
  width: 82px;
  height: 72px;
  left: 190px;
  top: 30px;
  transform: rotate(100deg);
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/arrow03.png) no-repeat center center;
  background-size: contain;
}
main section.four .container > div:last-child > p {
  font-size: 185%;
  text-align: center;
  padding-bottom: 30px;
}
main section.four .container > div:last-child > p span {
  display: inline-block;
  font-family: "MPLUSRounded1c-Bold", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro";
}
main section.four .container > div:last-child > p span:first-child {
  font-size: 260%;
  color: #ff6699;
  line-height: 1;
}
main section.four .container > div:last-child > p span:nth-child(2) {
  vertical-align: bottom;
  padding-left: 0.5em;
}
main section.four .container > div:last-child > p span:last-child {
  display: block;
  width: 12em;
  margin: 0.5em auto auto;
}
main section.four .container > div:last-child > p span:not(:first-child)::after {
  content: "";
  display: block;
  width: 100%;
  height: 0.3em;
  background-color: #eded16;
  margin-top: -0.35em;
}

@media screen and (max-width: 1024px) {
  main section.four .container {
    padding: 0;
    overflow: hidden;
  }
  main section.four .container > div:first-child h2 span:nth-child(2) {
    font-size: 7vw;
  }
  main section.four .container > div:first-child h2 span:last-child {
    font-size: 3.2vw;
  }
}
@media screen and (max-width: 880px) {
  main section.four .container > div:first-child > div {
    padding: 0 5% 450px 5%;
    background-size: 531px auto, 110% auto;
  }
  main section.four .container > div:first-child > div > div {
    width: 47%;
  }
  main section.four .container > div:first-child > div::before {
    bottom: 360px;
    left: 6vw;
  }
  main section.four .container > div:first-child > div::after {
    right: 4vw;
  }
  main section.four .container > div:first-child > p:last-child {
    padding-left: 10vw;
  }
  main section.four .container > div:last-child h3 span:last-child {
    font-size: 7vw;
  }
}
@media screen and (max-width: 768px) {
  main section.four .container > div:first-child > p:last-child {
    padding-left: 0;
    justify-content: center;
    font-size: 4vw;
  }
  main section.four .container > div:first-child > p:last-child span:nth-child(2) {
    width: auto;
  }
  main section.four .container > div:first-child > p:last-child span:last-child {
    width: auto;
  }
  main section.four .container > div:last-child h3 {
    background-position: 24% top, 5% 50px, 16% 150px, left 36% bottom 10px, 58% bottom, 90% 140px, 80% 20px;
    background-size: 70px auto, 90px auto, 80px auto, 60px auto, 80px auto, 100px auto, 70px auto;
  }
  main section.four .container > div:last-child div:last-child div:first-child p:first-child {
    margin-right: 0;
  }
}
@media screen and (max-width: 680px) {
  main section.four .container > div:first-child h2 {
    padding: 5vw 4vw;
  }
  main section.four .container > div:first-child h2 span:first-child {
    width: 20vw;
    height: 13.6vw;
  }
  main section.four .container > div:first-child h2 span:nth-child(2) {
    display: block;
    font-size: 10vw;
  }
  main section.four .container > div:first-child h2 span:last-child {
    display: block;
    text-align: center;
    font-size: 6vw;
    line-height: 1;
  }
  main section.four .container > div:first-child > div {
    display: block;
    padding: 0 5% 76vw 5%;
    background-size: 90% auto, 140% auto;
  }
  main section.four .container > div:first-child > div > div {
    width: 100%;
    margin-bottom: 30px;
  }
  main section.four .container > div:first-child > div::before {
    width: 20vw;
    height: 7vw;
    bottom: 62vw;
  }
  main section.four .container > div:first-child > div::after {
    width: 21vw;
    height: 7.4vw;
    bottom: 54vw;
  }
  main section.four .container > div:last-child > div:nth-child(2) p:first-child {
    margin-left: 50%;
  }
  main section.four .container > div:last-child > div:nth-child(2) p:last-child {
    margin-left: calc(50% - 12em);
  }
  main section.four .container > div:last-child > div:last-child {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  main section.four .container > div:last-child > div:last-child div:first-child p:last-child {
    margin: -130px 0 50px 220px;
  }
  main section.four .container > div:last-child > div:last-child div:last-child p:first-child {
    margin-left: 50%;
  }
  main section.four .container > div:last-child > div:last-child div:last-child p:last-child {
    margin: -120px 0 60px -120px;
  }
  main section.four .container > div:last-child > div:last-child div:last-child p:last-child::after {
    left: 170px;
    top: 50px;
    transform: rotate(120deg);
  }
  main section.four .container > div:last-child > p {
    font-size: 4.5vw;
  }
}
@media screen and (max-width: 580px) {
  main section.four .container > div:first-child {
    padding-bottom: 12vw;
  }
  main section.four .container > div:first-child > div {
    padding: 0 5% 85vw 5%;
  }
  main section.four .container > div:first-child > div::before {
    bottom: 70vw;
  }
  main section.four .container > div:first-child > div::after {
    bottom: 62vw;
  }
  main section.four .container > div:first-child > p:last-child {
    display: block;
    text-align: center;
    font-size: 6.4vw;
  }
  main section.four .container > div:first-child > p:last-child span:first-child {
    font-size: 200%;
    line-height: 1.1;
  }
  main section.four .container > div:first-child > p:last-child span:nth-child(2) {
    padding: 0;
  }
  main section.four .container > div:first-child > p:last-child span:nth-child(3) {
    font-size: 200%;
    line-height: 1.1;
  }
  main section.four .container > div:first-child > p:last-child span:last-child {
    padding: 0;
  }
  main section.four .container > div:last-child h3 {
    padding: 10vw 0;
    background-position: 24% top, 2% 50px, left 16% bottom 3vw, left 39% bottom 10px, 60% bottom, left 94% bottom 5vw, 84% 20px;
    background-size: 12vw auto, 16vw auto, 14vw auto, 8vw auto, 10vw auto, 14vw auto, 10vw auto;
  }
  main section.four .container > div:last-child h3 span:first-child {
    font-size: 18vw;
  }
}
@media screen and (max-width: 480px) {
  main section.four .container > div:last-child > div:nth-child(2) p:first-child {
    width: 38vw;
    height: 38vw;
    font-size: 3.8vw;
    margin: 0 5vw 0 auto;
  }
  main section.four .container > div:last-child > div:nth-child(2) p:first-child::after {
    width: 21vw;
    height: 21vw;
  }
  main section.four .container > div:last-child > div:nth-child(2) p:last-child {
    font-size: 3.8vw;
    margin: -20vw 50vw 10vw 5vw;
  }
  main section.four .container > div:last-child > div:nth-child(2) p:last-child::after {
    width: 22vw;
    height: 12vw;
    left: 39vw;
    top: -14vw;
  }
  main section.four .container > div:last-child > div:last-child {
    display: block;
  }
  main section.four .container > div:last-child > div:last-child > div:first-child p:first-child, main section.four .container > div:last-child > div:last-child > div:last-child p:first-child {
    width: 38vw;
    height: 38vw;
    font-size: 3.8vw;
  }
  main section.four .container > div:last-child > div:last-child > div:first-child p:first-child::after, main section.four .container > div:last-child > div:last-child > div:last-child p:first-child::after {
    width: 21vw;
    height: 21vw;
  }
  main section.four .container > div:last-child > div:last-child > div:first-child p:last-child, main section.four .container > div:last-child > div:last-child > div:last-child p:last-child {
    font-size: 3.8vw;
  }
  main section.four .container > div:last-child > div:last-child > div:first-child p:first-child {
    margin: 0 auto 0 5vw;
  }
  main section.four .container > div:last-child > div:last-child > div:first-child p:last-child {
    margin: -20vw auto 7vw 50vw;
  }
  main section.four .container > div:last-child > div:last-child > div:first-child p:last-child::after {
    width: 26vw;
    height: 20vw;
    left: -14vw;
    top: -16vw;
  }
  main section.four .container > div:last-child > div:last-child > div:last-child p:first-child {
    margin: 0 5vw 0 auto;
  }
  main section.four .container > div:last-child > div:last-child > div:last-child p:last-child {
    margin: -24vw 50vw 18vw 5vw;
  }
  main section.four .container > div:last-child > div:last-child > div:last-child p:last-child::after {
    width: 24vw;
    height: 18vw;
    left: 36vw;
    top: 10vw;
  }
}
@media screen and (max-width: 420px) {
  main section.four .container > div:first-child > div::before {
    bottom: 80vw;
    left: 2vw;
  }
  main section.four .container > div:first-child > div::after {
    bottom: 72vw;
    right: 2vw;
  }
  main section.four .container > div:last-child > p span {
    font-size: 6vw;
    display: block;
  }
  main section.four .container > div:last-child > p span:first-child {
    line-height: 1.4;
  }
  main section.four .container > div:last-child > p span:nth-child(2) {
    width: 11em;
    margin: 0 auto;
  }
}
main section.five {
  padding: 0 0 60px 0;
}
main section.five .container {
  background: linear-gradient(to bottom, transparent, #f0fcfb);
  position: relative;
  padding: 40px 0 0 0;
}
main section.five .container h3 {
  width: 500px;
  height: 500px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img39.jpg) no-repeat left top;
  background-size: cover;
  border-radius: 50%;
  color: #2564b9;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-size: 135%;
  text-align: center;
  padding-top: 120px;
  margin: 0 auto;
}
main section.five .container h3 span {
  display: inline-block;
}
main section.five .container h3 span:first-child {
  width: 100%;
  padding-bottom: 40px;
}
main section.five .container h3 span:nth-child(2) {
  font-size: 220%;
  vertical-align: bottom;
  width: 100%;
}
main section.five .container h3 span:nth-child(3) {
  width: 88px;
  height: 88px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/txt14.png) no-repeat left top;
  background-size: contain;
  margin-right: -20px;
  text-indent: -9999px;
}
main section.five .container h3 span:nth-child(4) {
  font-size: 220%;
  vertical-align: bottom;
}
main section.five .container h3::after {
  content: "";
  display: block;
  width: 450px;
  height: 152px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img29.png) no-repeat left top;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 0;
}
main section.five .container::before {
  content: "";
  display: block;
  width: 290px;
  height: 618px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img40.png) no-repeat left top;
  background-size: contain;
  position: absolute;
  right: 30px;
  bottom: 20px;
}
main section.five .container::after {
  content: "";
  display: block;
  width: 450px;
  height: 152px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/img29.png) no-repeat left top;
  background-size: contain;
  position: absolute;
  right: 0;
  bottom: 0;
  transform: scale(-1, -1);
}
main section.five .container ol {
  padding: 30px 0 0 60px;
  position: relative;
  z-index: 5;
}
main section.five .container ol li {
  padding-left: 70px;
  position: relative;
  min-height: 60px;
  margin-bottom: 20px;
  font-size: 125%;
}
main section.five .container ol li::before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  background: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/num1.png) no-repeat center center white;
  background-size: 39px auto;
  border: 1px solid #a6ebea;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: calc(50% - 30px);
}
main section.five .container ol li:first-child span {
  display: block;
}
main section.five .container ol li:nth-child(2) {
  display: flex;
  align-items: center;
}
main section.five .container ol li:nth-child(2)::before {
  background-image: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/num2.png);
}
main section.five .container ol li:nth-child(2) span:first-child {
  font-size: 150%;
  line-height: 1;
  padding: 0 0.2em;
}
main section.five .container ol li:nth-child(3)::before {
  background-image: url(https://gigaplus.makeshop.jp/Drestra/images/estragel-lp/num3.png);
}
main section.five .container ol li:nth-child(3) span:nth-child(2) {
  font-size: 150%;
  line-height: 1;
  padding: 0 0.2em;
}
main section.five .container ol li:nth-child(3) span:last-child {
  display: block;
}
main section.five .container > p:last-child {
  padding: 0 0 60px 120px;
  position: relative;
  z-index: 5;
}

@media screen and (max-width: 1024px) {
  main section.five {
    padding: 0;
  }
  main section.five .container::before {
    width: 32vw;
    height: 68vw;
  }
  main section.five .container ol {
    padding: 30px 0 0 7vw;
  }
  main section.five .container > p:last-child {
    padding: 0 0 60px 14vw;
  }
}
@media screen and (max-width: 580px) {
  main section.five .container {
    padding-top: 10vw 0 0 0;
  }
  main section.five .container::before {
    width: 40vw;
    height: 85vw;
    right: 20vw;
  }
  main section.five .container::after {
    width: 70vw;
    height: 23.6vw;
  }
  main section.five .container h3 {
    width: 86vw;
    height: 86vw;
    font-size: 3.8vw;
    padding-top: 19vw;
  }
  main section.five .container h3 span:nth-child(3) {
    width: 14vw;
    height: 14vw;
  }
  main section.five .container h3::after {
    width: 70vw;
    height: 23.6vw;
  }
  main section.five .container ol {
    padding: 30px 0 0 5vw;
  }
  main section.five .container ol li {
    margin-bottom: 3vw;
  }
  main section.five .container > p:last-child {
    padding: 0 0 90vw calc(5vw + 70px);
  }
}
@media screen and (max-width: 400px) {
  main section.five .container ol li {
    font-size: 4.8vw;
  }
  main section.five .container ol li::before {
    width: 14vw;
    height: 14vw;
    background-size: 72% auto;
  }
}
main section.six {
  padding-bottom: 60px;
}
main section.six h2 {
  color: #a73561;
  font-size: 5rem;
  line-height: 300px;
  text-align: center;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  min-height: 300px;
  background: url(../images/lp03/bg04.jpg) no-repeat center center;
  background-size: cover;
}
main section.six .container > div:first-child {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 3rem;
}
main section.six .container > div:first-child p {
  width: 45%;
}
main section.six .container > div:first-child img {
  width: 35%;
  margin: 0 10%;
  height: auto;
}
main section.six .container h3 {
  text-align: center;
  color: #a73561;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  font-size: 4rem;
  padding: 3rem 0 6rem 0;
  position: relative;
}
main section.six .container h3 span {
  position: relative;
  z-index: 1;
}
main section.six .container h3 span br:first-of-type {
  display: none;
}
main section.six .container h3::before, main section.six .container h3::after {
  content: "";
  display: block;
  width: 177px;
  height: 177px;
  background: url(../images/lp03/icon03.jpg) no-repeat center center;
  background-size: contain;
  position: absolute;
  top: 0;
  z-index: 0;
}
main section.six .container h3::before {
  left: 0;
}
main section.six .container h3::after {
  right: 0;
  transform: scale(-1, 1);
}
main section.six .container ul li {
  padding-left: 112px;
  padding-bottom: 40px;
  background: url(../images/lp03/icon05-num01.jpg) no-repeat left top;
  background-size: 102px auto;
}
main section.six .container ul li h4 {
  color: #a73561;
  font-size: 2rem;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  padding-bottom: 0.3em;
}
main section.six .container ul li:nth-child(2) {
  background-image: url(../images/lp03/icon05-num02.jpg);
}
main section.six .container ul li:nth-child(3) {
  background-image: url(../images/lp03/icon05-num03.jpg);
}
main section.six .container ul li:nth-child(4) {
  background-image: url(../images/lp03/icon05-num04.jpg);
}

@media screen and (max-width: 1024px) {
  main section.six .container h3 span br:first-of-type {
    display: inline;
  }
  main section.six .container h3::before, main section.six .container h3::after {
    top: 4vw;
  }
}
@media screen and (max-width: 768px) {
  main section.six .container h3 {
    font-size: 5vw;
  }
  main section.six .container h3::before, main section.six .container h3::after {
    width: 24vw;
  }
  main section.six .container > div:first-child {
    display: block;
  }
  main section.six .container > div:first-child p {
    width: 100%;
    padding-bottom: 2em;
  }
  main section.six .container > div:first-child img {
    width: 80%;
    margin: 0 auto;
  }
  main section.six .container ul li {
    padding-left: 16vw;
    background-size: 14vw auto;
  }
}
@media screen and (max-width: 600px) {
  main section.six h2 {
    font-size: 8.6vw;
    min-height: 6em;
    line-height: 6;
  }
  main section.six .container h3 {
    font-size: 6vw;
  }
  main section.six .container h3::before, main section.six .container h3::after {
    width: 22vw;
  }
  main section.six .container h3::before {
    left: -5vw;
  }
  main section.six .container h3::after {
    right: -5vw;
  }
}
main section.seven .container h2 {
  color: #a73561;
  font-size: 3.2rem;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  display: grid;
  grid-template-columns: auto 170px;
  grid-template-rows: auto auto;
  justify-content: center;
  align-items: center;
}
main section.seven .container h2 > span:first-child {
  grid-area: 1/1/2/2;
  font-size: 2.4rem;
}
main section.seven .container h2 > span:nth-child(2) {
  grid-area: 2/1/3/2;
  font-size: 3.5rem;
}
main section.seven .container h2 > span:nth-child(3) {
  width: 166px;
  height: 80px;
  background: url(../images/lp03/txt06.png) no-repeat center center;
  background-size: contain;
  grid-area: 1/2/3/3;
  text-indent: -9999px;
}
main section.seven .container h3 {
  font-size: 2rem;
  border-bottom: 1px solid #333;
  padding-bottom: 0.3em;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  margin-bottom: 0.7em;
}
main section.seven .container > p:first-of-type {
  padding-bottom: 3em;
}
main section.seven .container > p:nth-of-type(2) {
  margin-bottom: 1.4em;
}
main section.seven .container > p:nth-of-type(3) {
  margin-bottom: 2em;
}
main section.seven .container > p:nth-of-type(4) {
  margin-bottom: 3em;
}
main section.seven .container dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 3em;
}
main section.seven .container dl dt, main section.seven .container dl dd {
  margin-bottom: 0.5em;
  line-height: 2;
}
main section.seven .container dl dt {
  background-color: #a73561;
  color: white;
  width: 10em;
  text-align: center;
}
main section.seven .container dl dd {
  width: calc(100% - 12em);
}
main section.seven .container > div:first-of-type {
  border-image-source: url(../images/lp03/frame01.png);
  border-image-slice: 115;
  border-image-width: 115px;
  padding: 40px 30px 30px 30px;
  font-family: "MPLUSRounded1c-Bold", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro";
  margin-bottom: 3em;
}
main section.seven .container > div:first-of-type h4 {
  color: #a73561;
  font-size: 2.6rem;
  text-align: center;
  padding-bottom: 30px;
}
main section.seven .container > div:first-of-type h4 br {
  display: none;
}
main section.seven .container > div:first-of-type ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
main section.seven .container > div:first-of-type ul li {
  width: 23%;
}
main section.seven .container > div:first-of-type ul li img {
  width: 100%;
  height: auto;
  margin-bottom: 10px;
}
main section.seven .container > div:first-of-type ul li:nth-child(-n+4) {
  margin-bottom: 30px;
}
main section.seven .container > div:first-of-type ul li h5 {
  text-align: center;
  font-size: 2rem;
}
main section.seven .container > div:last-of-type {
  padding-bottom: 5em;
}
main section.seven .container > div:last-of-type p {
  text-align: center;
  color: #a73561;
  font-size: 2.6rem;
  font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
  padding-bottom: 1em;
}
main section.seven .container > div:last-of-type p br {
  display: none;
}
main section.seven .container > div:last-of-type img {
  width: 50%;
  height: auto;
  margin: 0 auto;
}

@media screen and (max-width: 900px) {
  main section.seven .container > div:first-of-type h4 br {
    display: inline;
  }
}
@media screen and (max-width: 768px) {
  main section.seven .container h2 > span:first-child {
    grid-area: 1/1/2/2;
    font-size: 2.4rem;
  }
  main section.seven .container h2 > span:first-child span {
    display: block;
    text-align: center;
    line-height: 1.2;
  }
  main section.seven .container h2 > span:nth-child(2) {
    grid-area: 2/1/3/3;
    font-size: 3.5rem;
    text-align: center;
  }
  main section.seven .container h2 > span:nth-child(3) {
    width: 100%;
    height: 100%;
    grid-area: 1/2/2/3;
  }
  main section.seven .container > div:first-of-type {
    padding: 30px 10px 30px 10px;
  }
  main section.seven .container > div:first-of-type h4 {
    padding: 0 20px 30px 20px;
  }
  main section.seven .container > div:first-of-type ul li {
    width: 46%;
    margin-bottom: 30px;
  }
  main section.seven .container > div:first-of-type ul li img {
    margin: 0 auto 10px auto;
  }
  main section.seven .container > div:first-of-type ul li:last-child {
    width: 100%;
  }
  main section.seven .container > div:first-of-type ul li:last-child img {
    width: 46%;
  }
}
@media screen and (max-width: 600px) {
  main section.seven .container h2 {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    gap: 3vw;
  }
  main section.seven .container h2 > span:first-child {
    grid-area: 1/1/2/2;
  }
  main section.seven .container h2 > span:nth-child(2) {
    grid-area: 3/1/4/2;
    font-size: 6vw;
  }
  main section.seven .container h2 > span:nth-child(3) {
    width: 100%;
    height: 100%;
    grid-area: 2/1/3/2;
  }
  main section.seven .container > div:last-of-type p br {
    display: inline;
  }
  main section.seven .container > div:last-of-type img {
    width: 80%;
  }
}
@media screen and (max-width: 520px) {
  main section.seven .container dl dd {
    width: 100%;
    padding-left: 5vw;
  }
  main section.seven .container > div:first-of-type h4 {
    font-size: 5vw;
  }
  main section.seven .container > div:first-of-type ul li h5 {
    font-size: 4vw;
  }
  main section.seven .container > div:last-of-type p {
    font-size: 6vw;
  }
}