@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

a {
  text-decoration: unset;
  color: inherit;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") right 0.75rem center/16px 12px;
  background-repeat: no-repeat;
}

input,
textarea {
  border: unset;
}
input:focus-visible,
textarea:focus-visible {
  outline: unset;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #c2c2c2;
  font-weight: normal;
}
input::placeholder,
textarea::placeholder {
  color: #c2c2c2;
  font-weight: normal;
}

button {
  border: none;
  cursor: pointer;
  font-family: inherit;
  background: unset;
}

input,
select,
textarea {
  font-size: inherit;
  font-family: inherit;
}

.eff {
  opacity: 0;
  transition: all 0.5s;
}
.eff.slidein-left {
  transform: translate(-75%, 0);
}
.eff.slidein-right {
  transform: translate(75%, 0);
}
.eff.slidein-up {
  transform: translate(0, -75%);
}
.eff.slidein-bottom {
  transform: translate(0, 100px);
}
.eff.fly-top-r {
  transform: translate(100px, -100px);
}
.eff.fly-top-l {
  transform: translate(-100px, -100px);
}
.eff.fly-bottom-r {
  transform: translate(100px, 100px);
}
.eff.rotate {
  transform: rotate(-180deg);
  transition: all 1s;
}
.eff.scale {
  scale: 0;
}
.eff.scrollin {
  transform: translate(0, 0);
  opacity: 1;
  scale: 1;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  color: #232323;
  line-height: 1.4;
  font-size: clamp(12px, 4px + 2.86vw, 16px);
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.1em;
  background: url("../img/top/body-bg.png") repeat, #f2f6e6;
  background-blend-mode: darken, normal;
}
body.ready {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
}
@media screen and (min-width: 768px) {
  body {
    font-size: clamp(16px, 12.44px + 0.46vw, 18px);
  }
}

.container {
  max-width: 982px;
  margin: 0 auto;
  padding: 0 15px;
  width: 100%;
}

.br-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .br-sp {
    display: inline-block;
  }
}

@media screen and (max-width: 767px) {
  .br-pc {
    display: none;
  }
}

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

p {
  line-height: 1.9;
}

.header__logo {
  max-width: 261px;
  width: 100%;
  display: flex;
  position: absolute;
  top: clamp(15px, -20.56px + 4.63vw, 35px);
  left: clamp(15px, -75.67px + 11.81vw, 66px);
  z-index: 2;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 767px) {
  .header__logo {
    max-width: 33.6vw !important;
  }
}

#page-top .header__logo {
  max-width: clamp(180px, -225px + 27vw, 261px);
}

.footer {
  background: url("../img/top/footer-bg.png") no-repeat center/cover;
  padding: clamp(60px, 31.83px + 10.06vw, 109px) 0 169px;
}
.footer__logo {
  max-width: clamp(260px, 105.33px + 20.14vw, 347px);
  display: flex;
  margin: 0 auto 0;
}
.footer__list {
  font-size: clamp(14px, 12.85px + 0.41vw, 16px);
  margin: 30px 0 20px;
}
.footer__list-item:first-child {
  color: var(--primary-color);
}
.footer__list-item:last-child {
  font-size: clamp(12px, 8.44px + 0.46vw, 14px);
  font-weight: 400;
}
.footer__list-item a {
  font-size: clamp(26px, 18.89px + 0.93vw, 30px);
  font-weight: 900;
}
.footer__link {
  font-weight: 700;
  margin-bottom: 20px;
  display: inline-block;
}
.footer__link:hover {
  text-decoration: underline;
}

#page-top .footer {
  margin-top: -472px;
}

:root {
  --primary-color: #46af52;
  --secondary-font: "MOBO";
}

main {
  overflow: hidden;
}

.list__stl,
.note__stl {
  padding-left: 1em;
  position: relative;
  display: inline-block;
}
.list__stl::before,
.note__stl::before {
  content: "・";
  position: absolute;
  left: 0;
}

.note__stl::before {
  content: "※";
}

.btn__primary {
  padding: clamp(12px, 7.98px + 1.44vw, 19px) clamp(20px, 2.75px + 6.16vw, 50px);
  background: var(--primary-color);
  color: #fff;
  transition: 0.3s;
  display: flex;
  align-items: center;
  gap: 20px;
  font-size: clamp(14px, 9.4px + 1.64vw, 22px);
  font-weight: 900;
  border: 3px solid #15591d;
  box-shadow: 0px 4px 0px 0px #15591d;
  border-radius: 99px;
  width: -moz-fit-content;
  width: fit-content;
}
.btn__primary::after {
  content: "";
  min-width: 30px;
  aspect-ratio: 1;
  background: url("../img/top/btn-icon.svg") no-repeat center/contain;
  display: inline-block;
}
.btn__primary:hover {
  box-shadow: unset !important;
  transform: translateY(4px) !important;
}

h2 .en {
  font-family: var(--secondary-font);
  color: var(--primary-color);
  font-size: clamp(36px, 11.11px + 3.24vw, 50px);
}
h2 .en span {
  margin-inline: 20px;
}
h2 .en::before,
h2 .en::after {
  content: "";
  min-width: 28px;
  aspect-ratio: 0.88;
  background: url("../img/top/h2-icon.svg") no-repeat center/contain;
  display: inline-block;
  transform: translateY(-0.05em);
}
h2 .ja {
  font-weight: 900;
}

.to__top {
  position: fixed;
  bottom: 70px;
  right: 15px;
  z-index: 9;
  display: none;
  transition: all 0.3s ease 0s;
  text-align: center;
}

.btn__line {
  position: fixed;
  z-index: 9;
  color: #fff;
  font-weight: 900;
  transition: 0.3s;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
}
.btn__line:hover {
  filter: drop-shadow(0px 4px 6px black);
}
.btn__line span {
  display: block;
  margin-bottom: 2px;
}
.btn__line::before {
  content: "";
  min-width: 35px;
  aspect-ratio: 1.06;
  background: url("../img/top/line-icon.svg") no-repeat center/contain;
  display: inline-block;
}
.btn__line.show {
  opacity: 1;
  visibility: visible;
}

@media screen and (min-width: 768px) {
  .to__top {
    bottom: 10px;
    right: 60px;
  }
  .btn__line {
    border-radius: 50%;
    bottom: 80px;
    right: 15px;
    font-size: 14px;
    aspect-ratio: 1;
    width: 150px;
    background: url("../img/top/btn-line-bg.svg") no-repeat center/contain;
  }
}
@media screen and (max-width: 767px) {
  .btn__line {
    display: flex;
    background: #46af52;
    padding: 10px 20px 10px;
    align-items: center;
    gap: 20px;
    font-size: 18px;
    justify-content: space-between;
    flex-direction: row-reverse;
    max-width: 300px;
    width: 100%;
    bottom: 15px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 99px;
  }
  .btn__line span {
    flex: 1;
  }
  .btn__line::after {
    transform: rotate(-90deg);
  }
}
.line {
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s ease-in;
}
.line__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.line__content {
  position: absolute;
  max-width: 836px;
  width: calc(100% - 30px);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 10px;
  background: url("../img/top/line-bg.png") no-repeat center/cover;
  padding: 86px clamp(15px, -55.4px + 17.6vw, 103px) 112px;
}
.line__content::after {
  content: "";
  min-width: 229px;
  aspect-ratio: 1.47;
  background: url("../img/top/line-fairy.png") no-repeat center/contain;
  display: inline-block;
  position: absolute;
  bottom: 56px;
  right: clamp(10px, -13.11px + 3.01vw, 23px);
  min-width: clamp(50px, -52.92px + 36.76vw, 229px);
}
.line__content-close {
  aspect-ratio: 1;
  min-width: 35px;
  background: url("../img/top/line-close.svg") no-repeat center/contain;
  position: absolute;
  top: 20px;
  right: 20px;
  transition: 0.3s;
}
.line__content-close:hover {
  filter: contrast(0.3);
}
.line__content h2 {
  font-size: clamp(21px, 8.56px + 1.62vw, 28px);
  font-weight: 900;
}
.line__content p {
  margin: 30px 0;
  line-height: 1.6;
  letter-spacing: normal;
}
.line__content p span {
  color: var(--primary-color);
}
.line__content .line-btn {
  background: #00ba00;
  display: block;
  padding: 15px 30px;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 10px;
  transition: 0.3s;
}
.line__content .line-btn:hover {
  filter: drop-shadow(0px 5px 3px #000);
}
.line__content .desc {
  font-weight: 700;
}
.line.show {
  opacity: 1;
  visibility: visible;
}

.main .container {
  max-width: 1116px;
  position: relative;
  opacity: 0;
}
.main img {
  position: absolute;
}
.main__wrap-box {
  font-family: var(--secondary-font);
  letter-spacing: normal;
  font-weight: bolder;
}
.main__wrap-box .banner {
  color: #fff;
  position: relative;
  left: -0.75em;
}
.main__wrap-box h1 {
  line-height: 1.3;
  color: #292224;
}
.main__wrap-box h1 span {
  color: rgba(255, 92, 0, 0.8509803922);
}
.main__wrap-box ul {
  color: var(--primary-color);
}
.main__wrap-box ul li {
  border-bottom: dashed 2px var(--primary-color);
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.main__wrap .btn__primary {
  transition: unset;
  margin: 0 auto;
}
.main__wrap .btn__primary.transi {
  transition: 0.3s;
}
.main__wrap-text {
  color: #000;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .main {
    background: url("../img/top/main-bg-pc.jpg") no-repeat center/cover;
    padding: clamp(90px, 132.52px + -2.93vw, 110px) 0 0;
  }
  .main__girl1 {
    top: -64px;
    right: clamp(200px, -150.9px + 45.69vw, 306px);
    max-width: clamp(100px, -29.1px + 16.81vw, 139px);
  }
  .main__girl2 {
    bottom: clamp(269px, 564.8px + -20.4vw, 320px);
    left: clamp(-142px, 681.6px + -56.8vw, 0px);
    max-width: clamp(100px, -131.72px + 30.17vw, 170px);
  }
  .main__model {
    bottom: 0;
    max-width: clamp(271px, 7.49px + 34.31vw, 505px);
    right: clamp(-112px, 537.6px + -44.8vw, 0px);
  }
  .main__wrap {
    max-width: clamp(544px, 195.56px + 45.37vw, 740px);
    padding-bottom: 48px;
  }
  .main__wrap-box {
    background: url("../img/top/main-banner-pc.svg") no-repeat center/contain;
    aspect-ratio: 750/588;
    padding: clamp(26px, 1.11px + 3.24vw, 40px) 0 0;
  }
  .main__wrap-box .banner {
    font-size: clamp(20px, 7.56px + 1.62vw, 27px);
    transform: rotate(-3.635deg);
  }
  .main__wrap-box h1 {
    font-size: clamp(52px, 20px + 4.17vw, 70px);
    margin: clamp(30px, 12.22px + 2.31vw, 40px) 0 clamp(5px, -21.67px + 3.47vw, 20px);
  }
  .main__wrap-box h1 span {
    font-size: clamp(64px, 24.89px + 5.09vw, 86px);
  }
  .main__wrap-box ul {
    font-size: clamp(24px, 16.89px + 0.93vw, 28px);
  }
  .main__wrap-box ul li {
    padding: 10px 10px;
  }
  .main__wrap-text {
    margin: 20px auto 10px;
  }
}
@media screen and (max-width: 767px) {
  .main {
    background: url("../img/top/main-bg-sp.jpg") no-repeat center/cover;
    padding: 20vw 0 12.53vw;
  }
  .main .container {
    padding: unset;
  }
  .main__girl1 {
    top: -5.87vw;
    right: 13.33vw;
    max-width: 15.2vw;
  }
  .main__girl2 {
    top: 64.53vw;
    left: 0vw;
    max-width: 14.67vw;
    transform: rotate(-29.103deg);
  }
  .main__model {
    top: 16vw;
    right: -1.6vw;
    max-width: 32.53vw;
  }
  .main__wrap-box {
    background: url("../img/top/main-banner-sp.svg") no-repeat center/contain;
    aspect-ratio: 306/294;
    padding: 6.4vw 0 0;
    max-width: 81.6vw;
    width: 100%;
  }
  .main__wrap-box .banner {
    font-size: 2.93vw;
    transform: rotate(-2.904deg);
  }
  .main__wrap-box h1 {
    font-size: 7.47vw;
    margin: 6.4vw 0 3.73vw;
  }
  .main__wrap-box h1 span {
    font-size: 9.07vw;
  }
  .main__wrap-box ul {
    font-size: 3.2vw;
  }
  .main__wrap-box ul li {
    padding: 1.33vw 2.67vw;
  }
  .main__wrap-text {
    margin: 10.67vw auto 2.67vw;
    font-size: clamp(14px, 10.55px + 1.23vw, 20px);
  }
}

.main-ft {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 14px;
  align-items: baseline;
}
.main-ft .item01 {
  width: 230px;
  height: 230px;
  filter: drop-shadow(0px 0px 5px #a1a3a6);
  background-color: #fff;
  background-image: url(../img/main-01.png);
  background-repeat: no-repeat;
  background-size: 92%;
  background-position: center;
  background-position-y: 3px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.main-ft .item01-text__01 {
  text-align: center;
  /* drop */
  filter: drop-shadow(2px 2px 1px #a1a3a6);
  font-family: var(--secondary-font);
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 1.2;
  /*  background: linear-gradient(180deg, #C6964C 0%, #EED87D 49%, #CFA053 100%);
   background-clip: text;
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent; */
  color: rgba(255, 92, 0, 0.8509803922);
  -webkit-background-clip: text;
  background-clip: text;
  --stroke-width: 1px;
  --stroke-color: #fff;
  text-shadow: calc(var(--stroke-width) * 1) calc(var(--stroke-width) * 0) 0 var(--stroke-color), calc(var(--stroke-width) * 0.9511) calc(var(--stroke-width) * 0.309) 0 var(--stroke-color), calc(var(--stroke-width) * 0.809) calc(var(--stroke-width) * 0.5878) 0 var(--stroke-color), calc(var(--stroke-width) * 0.5878) calc(var(--stroke-width) * 0.809) 0 var(--stroke-color), calc(var(--stroke-width) * 0.309) calc(var(--stroke-width) * 0.9511) 0 var(--stroke-color), calc(var(--stroke-width) * 0) calc(var(--stroke-width) * 1) 0 var(--stroke-color), calc(var(--stroke-width) * -0.309) calc(var(--stroke-width) * 0.9511) 0 var(--stroke-color), calc(var(--stroke-width) * -0.5878) calc(var(--stroke-width) * 0.809) 0 var(--stroke-color), calc(var(--stroke-width) * -0.809) calc(var(--stroke-width) * 0.5878) 0 var(--stroke-color), calc(var(--stroke-width) * -0.9511) calc(var(--stroke-width) * 0.309) 0 var(--stroke-color), calc(var(--stroke-width) * -1) calc(var(--stroke-width) * 0) 0 var(--stroke-color), calc(var(--stroke-width) * -0.9511) calc(var(--stroke-width) * -0.309) 0 var(--stroke-color), calc(var(--stroke-width) * -0.809) calc(var(--stroke-width) * -0.5878) 0 var(--stroke-color), calc(var(--stroke-width) * -0.5878) calc(var(--stroke-width) * -0.809) 0 var(--stroke-color), calc(var(--stroke-width) * -0.309) calc(var(--stroke-width) * -0.9511) 0 var(--stroke-color), calc(var(--stroke-width) * 0) calc(var(--stroke-width) * -1) 0 var(--stroke-color), calc(var(--stroke-width) * 0.309) calc(var(--stroke-width) * -0.9511) 0 var(--stroke-color), calc(var(--stroke-width) * 0.5878) calc(var(--stroke-width) * -0.809) 0 var(--stroke-color), calc(var(--stroke-width) * 0.809) calc(var(--stroke-width) * -0.5878) 0 var(--stroke-color), calc(var(--stroke-width) * 0.9511) calc(var(--stroke-width) * -0.309) 0 var(--stroke-color);
  min-height: 48px;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  /*  -webkit-text-stroke: 1px #fff;
   -webkit-text-fill-color: #C6964C; */
}
@media screen and (max-width: 767px) {
  .main-ft .item01-text__01 {
    font-size: 18px;
    letter-spacing: 0;
    min-height: 34px;
  }
}
@media screen and (max-width: 992px) and (min-width: 768px) {
  .main-ft .item01-text__01 {
    font-size: 20px;
    letter-spacing: 0;
  }
}
.main-ft .item01-text__02 {
  text-align: center;
  /* drop */
  filter: drop-shadow(2px 2px 1px #a1a3a6);
  font-family: var(--secondary-font);
  font-size: 30px;
  line-height: 1;
  font-style: normal;
  font-weight: 600;
  /*  background: linear-gradient(180deg, #C6964C 0%, #EED87D 49%, #CFA053 100%);
   color: #ff5c00d9;
   background-clip: text;
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent; */
  color: #ffd700;
  -webkit-background-clip: text;
  background-clip: text;
  --stroke-width: 1px;
  --stroke-color: #fff;
  text-shadow: calc(var(--stroke-width) * 1) calc(var(--stroke-width) * 0) 0 var(--stroke-color), calc(var(--stroke-width) * 0.9511) calc(var(--stroke-width) * 0.309) 0 var(--stroke-color), calc(var(--stroke-width) * 0.809) calc(var(--stroke-width) * 0.5878) 0 var(--stroke-color), calc(var(--stroke-width) * 0.5878) calc(var(--stroke-width) * 0.809) 0 var(--stroke-color), calc(var(--stroke-width) * 0.309) calc(var(--stroke-width) * 0.9511) 0 var(--stroke-color), calc(var(--stroke-width) * 0) calc(var(--stroke-width) * 1) 0 var(--stroke-color), calc(var(--stroke-width) * -0.309) calc(var(--stroke-width) * 0.9511) 0 var(--stroke-color), calc(var(--stroke-width) * -0.5878) calc(var(--stroke-width) * 0.809) 0 var(--stroke-color), calc(var(--stroke-width) * -0.809) calc(var(--stroke-width) * 0.5878) 0 var(--stroke-color), calc(var(--stroke-width) * -0.9511) calc(var(--stroke-width) * 0.309) 0 var(--stroke-color), calc(var(--stroke-width) * -1) calc(var(--stroke-width) * 0) 0 var(--stroke-color), calc(var(--stroke-width) * -0.9511) calc(var(--stroke-width) * -0.309) 0 var(--stroke-color), calc(var(--stroke-width) * -0.809) calc(var(--stroke-width) * -0.5878) 0 var(--stroke-color), calc(var(--stroke-width) * -0.5878) calc(var(--stroke-width) * -0.809) 0 var(--stroke-color), calc(var(--stroke-width) * -0.309) calc(var(--stroke-width) * -0.9511) 0 var(--stroke-color), calc(var(--stroke-width) * 0) calc(var(--stroke-width) * -1) 0 var(--stroke-color), calc(var(--stroke-width) * 0.309) calc(var(--stroke-width) * -0.9511) 0 var(--stroke-color), calc(var(--stroke-width) * 0.5878) calc(var(--stroke-width) * -0.809) 0 var(--stroke-color), calc(var(--stroke-width) * 0.809) calc(var(--stroke-width) * -0.5878) 0 var(--stroke-color), calc(var(--stroke-width) * 0.9511) calc(var(--stroke-width) * -0.309) 0 var(--stroke-color);
}
@media screen and (max-width: 767px) {
  .main-ft .item01-text__02 {
    font-size: 20px;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 992px) and (min-width: 768px) {
  .main-ft .item01-text__02 {
    font-size: 23px;
  }
}
.main-ft .item01-text__02 span {
  font-size: 45px;
}
@media screen and (max-width: 992px) and (min-width: 768px) {
  .main-ft .item01-text__02 span {
    font-size: 30px;
  }
}
@media screen and (max-width: 767px) {
  .main-ft .item01-text__02 span {
    font-size: 27px;
  }
}
@media screen and (max-width: 767px) {
  .main-ft {
    margin-top: 15px;
    padding-left: 10px;
    padding-right: 10px;
    gap: 10px;
    width: -moz-fit-content;
    width: fit-content;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    grid-template-columns: 1fr;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .main-ft .item01 {
    width: 169px;
    width: 45vw;
    height: auto;
    aspect-ratio: 1;
    background-size: 94%;
    background-position-y: 1px;
  }
  .main-ft .item01:nth-child(3) {
    margin-top: -20px;
  }
}
@media screen and (max-width: 992px) and (min-width: 768px) {
  .main-ft {
    padding-top: 5px;
  }
  .main-ft .item01 {
    background-size: 96%;
    width: 193px;
    height: 193px;
    background-position-y: 1px;
  }
}

.main-bottom {
  text-align: center;
  padding: 25px 0;
}
.main-bottom button {
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  .main-bottom {
    padding: 0;
  }
}

.service {
  padding: 115px 0 150px;
}
.service--bottom {
  padding: 134px 0 100px;
}
.service--bottom.bg {
  background: url("../img/top/service-bottom-bg.svg") no-repeat top center/cover;
}
.service--bottom .container {
  position: relative;
}
.service__fairy {
  position: absolute;
  max-width: clamp(210px, 28.67px + 23.61vw, 312px);
  top: clamp(-266px, -138.22px + -10.65vw, -220px);
  right: clamp(-92px, 276px + -30.67vw, 0px);
}
.service__wrap {
  margin-top: 45px;
}
.service__wrap img {
  max-width: clamp(330px, 237.56px + 12.04vw, 382px);
  margin-bottom: 30px;
}
.service__wrap p {
  text-align: justify;
}
.service__title-sub {
  font-size: clamp(18px, 10px + 2vw, 30px);
  font-weight: 900;
  margin-bottom: 30px;
}
.service__list-item {
  aspect-ratio: 230/241;
  position: relative;
  max-width: 260px;
  margin: 30px auto 0;
  width: 100%;
}
.service__list-item.item1 {
  background: url("../img/top/service-box1.png") no-repeat center/contain;
}
.service__list-item.item2 {
  background: url("../img/top/service-box2.png") no-repeat center/contain;
}
.service__list-item.item3 {
  background: url("../img/top/service-box3.png") no-repeat center/contain;
}
.service__list-item p {
  position: absolute;
  color: #fff;
  font-weight: 900;
  left: 50%;
  transform: translateX(-50%);
  top: 40%;
  white-space: nowrap;
}
.service__line {
  margin-top: 68px;
}
.service__line-left p {
  margin: 30px 0;
}
.service__line-left h3 {
  font-size: clamp(18px, 10px + 2vw, 30px);
  font-weight: 900;
  color: var(--primary-color);
}
.service__line-left .btn__primary {
  border: 3px solid #232323;
  background: #00ba00;
  box-shadow: 0px 4px 0px 0px #232323;
  margin: 0 auto;
}
.service__line img {
  max-width: clamp(260px, 164px + 12.5vw, 314px);
  margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
  .service__wrap {
    display: flex;
    align-items: center;
    gap: clamp(20px, -104.44px + 16.2vw, 90px);
    text-align: left;
    flex-direction: row-reverse;
    justify-content: space-between;
  }
  .service__wrap img {
    margin-bottom: unset;
  }
  .service__list {
    display: flex;
    gap: clamp(20px, -15.56px + 4.63vw, 40px);
    justify-content: center;
  }
  .service__list-item {
    margin: unset;
    font-size: 16px;
  }
  .service__line {
    display: flex;
    gap: clamp(5px, -39.44px + 5.79vw, 30px);
    align-items: center;
    flex-direction: row-reverse;
    text-align: left;
    justify-content: space-between;
  }
  .service__line-left .btn__primary {
    margin: unset;
  }
  .service__line img {
    margin-bottom: 15px;
  }
}

.item {
  padding: 100px 0;
}
.item__wrap {
  margin-top: clamp(51px, 37683px + -4900vw, 100px);
  text-align: left;
}
.item__wrap-img {
  max-width: clamp(350px, 102.89px + 32.18vw, 489px);
  width: 100%;
  position: relative;
  margin: 0 auto;
}
.item__wrap-img .fairy {
  position: absolute;
  max-width: clamp(100px, -1.33px + 13.19vw, 157px);
  top: clamp(-116px, 28.44px + -12.04vw, -64px);
  right: 40px;
}
.item__wrap-img .fairy.fly-bottom-r {
  transform: translate(100px, 100px) rotate(-27.32deg);
}
.item__wrap-img .fairy.fly-bottom-r.scrollin {
  transform: translate(0, 0) rotate(-27.32deg);
}
.item__wrap-left ul {
  margin: 17px 0;
}
.item__wrap-left ul li {
  font-weight: 700;
  color: #03aed2;
  padding-left: 45px;
  position: relative;
}
.item__wrap-left ul li::before {
  content: "";
  min-width: 30px;
  aspect-ratio: 1;
  background: url("../img/top/item-list-icon.svg") no-repeat center/contain;
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}
.item__wrap-left ul li:not(:last-child) {
  margin-bottom: 10px;
}
.item__wrap-left .desc {
  margin-top: 15px;
  color: #555555;
  font-size: clamp(10px, 0px + 3.57vw, 15px);
}
@media screen and (min-width: 768px) {
  .item__wrap {
    display: flex;
    flex-direction: row-reverse;
    gap: clamp(30px, -23.33px + 6.94vw, 60px);
    align-items: center;
  }
  .item__wrap-img {
    margin: unset;
  }
}
@media screen and (max-width: 767px) {
  .item__wrap-left {
    max-width: 400px;
    margin: 30px auto 0;
  }
}

.flow {
  padding: 140px 0;
  position: relative;
  z-index: 2;
}
.flow.bg::after {
  content: "";
  background: url("../img/top/flow-bg.png") no-repeat center/1920px 100%;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: -1;
}
.flow__step {
  margin-top: 80px;
}
.flow__step-item.title h3 {
  font-size: clamp(25px, 7.22px + 2.31vw, 35px);
  font-weight: 900;
  color: var(--primary-color);
  text-shadow: 4px 0px 0 #fff, 3.6956px 1.5308px 0 #fff, 2.8284px 2.8284px 0 #fff, 1.5308px 3.6956px 0 #fff, 0px 4px 0 #fff, -1.5308px 3.6956px 0 #fff, -2.8284px 2.8284px 0 #fff, -3.6956px 1.5308px 0 #fff, -4px 0px 0 #fff, -3.6956px -1.5308px 0 #fff, -2.8284px -2.8284px 0 #fff, -1.5308px -3.6956px 0 #fff, 0px -4px 0 #fff, 1.5308px -3.6956px 0 #fff, 2.8284px -2.8284px 0 #fff, 3.6956px -1.5308px 0 #fff;
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.1));
  padding: 24px 0;
}
.flow__step-item.title.title-col1 h3 {
  background: url("../img/top/flow-title-bg-col1.svg") no-repeat center/contain;
}
.flow__step-item.title.title-col2 h3 {
  background: url("../img/top/flow-title-bg-col2.svg") no-repeat center/contain;
}
.flow__step-item.text {
  position: relative;
}
.flow__step-item.text h4 {
  font-size: clamp(14px, 10.55px + 1.23vw, 20px);
  font-weight: 700;
  padding: 5px 20px;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 99px;
  background: #b5e5f0;
  margin: 0 auto 10px;
}
.flow__step-item.text p {
  letter-spacing: normal;
  text-align: justify;
}
.flow__step-item.percent .box {
  position: relative;
  max-width: 340px;
  width: 100%;
  aspect-ratio: 340/307;
  background: url("../img/top/flow-box.png") no-repeat center/contain;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.flow__step-item.percent .box .title {
  font-size: clamp(22px, 7.78px + 1.85vw, 30px);
  font-weight: 700;
  color: #fff;
}
.flow__step-item.percent .box .content {
  font-weight: 900;
  line-height: 1;
  text-shadow: 3px 0px 0 #000, 2.7717px 1.1481px 0 #000, 2.1213px 2.1213px 0 #000, 1.1481px 2.7717px 0 #000, 0px 3px 0 #000, -1.1481px 2.7717px 0 #000, -2.1213px 2.1213px 0 #000, -2.7717px 1.1481px 0 #000, -3px 0px 0 #000, -2.7717px -1.1481px 0 #000, -2.1213px -2.1213px 0 #000, -1.1481px -2.7717px 0 #000, 0px -3px 0 #000, 1.1481px -2.7717px 0 #000, 2.1213px -2.1213px 0 #000, 2.7717px -1.1481px 0 #000;
  filter: drop-shadow(0 3px 0px #000);
  color: #ffe100;
}
.flow__step-item.percent .box .content .num {
  font-size: clamp(80px, 44.44px + 4.63vw, 100px);
}
.flow__step-item.percent .box .content .per {
  font-size: clamp(30px, 12.22px + 2.31vw, 40px);
}
.flow__step-item.percent .box::after {
  content: "";
  min-width: 113px;
  aspect-ratio: 1.28;
  position: absolute;
  display: inline-block;
}
.flow__step-item.percent1 .box::after {
  background: url("../img/top/flow-fairy1.png") no-repeat center/contain;
  top: clamp(-8px, -52.44px + 5.79vw, 17px);
  left: clamp(-64px, 72.11px + -11.34vw, -15px);
}
.flow__step-item.percent2 .box::after {
  background: url("../img/top/flow-fairy2.png") no-repeat center/contain;
  top: -17px;
  right: clamp(-36px, 64px + -8.33vw, 0px);
}
@media screen and (min-width: 768px) {
  .flow .container {
    max-width: 1170px;
  }
  .flow__step {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px clamp(96px, -88.89px + 24.07vw, 200px);
  }
  .flow__step-item {
    grid-row: var(--gr-row);
    grid-column: var(--gr-col);
  }
  .flow__step-item.percent {
    margin: 15px 0 -100px;
  }
  .flow__step-item.percent .box {
    margin: 0 auto;
  }
  .flow__step-item.text.text2-1 {
    display: none;
  }
  .flow__step-item.text p {
    font-size: 16px;
    max-width: 372px;
    margin: 0 auto;
  }
  .flow__step-item.text.text1-col1 p {
    max-width: 480px;
  }
  .flow__step-item.text.text1-col1 h4 {
    position: relative;
  }
  .flow__step-item.text.text1-col1 h4::before {
    content: "";
    min-width: 324px;
    aspect-ratio: 0.8;
    background: url("../img/top/flow-pol1-text1-pc.svg") no-repeat center/contain;
    display: inline-block;
    position: absolute;
    top: -130px;
    left: -106%;
    z-index: -1;
  }
  .flow__step-item.text.text1-col1 h4::after {
    content: "";
    min-width: 255px;
    aspect-ratio: 0.61;
    background: url("../img/top/flow-pol2-text1-pc.svg") no-repeat center/contain;
    display: inline-block;
    position: absolute;
    top: -123px;
    right: clamp(-224px, 7.82px + -25.76vw, -190px);
    z-index: -1;
  }
  .flow__step-item.text.text2-col1 h4 {
    position: relative;
  }
  .flow__step-item.text.text2-col1 h4::before {
    content: "";
    min-width: 189px;
    aspect-ratio: 0.31;
    background: url("../img/top/flow-pol1-text2-pc.svg") no-repeat center/contain;
    display: inline-block;
    position: absolute;
    top: -166px;
    left: -68%;
    z-index: -1;
  }
  .flow__step-item.text.text2-col2 h4 {
    position: relative;
  }
  .flow__step-item.text.text2-col2 h4::before {
    content: "";
    min-width: 215px;
    aspect-ratio: 0.38;
    background: url("../img/top/flow-pol2-text2-pc.svg") no-repeat center/contain;
    display: inline-block;
    position: absolute;
    top: -129px;
    right: -30%;
    z-index: -1;
  }
  .flow__step-item.text.text2-col1 .wrap,
  .flow__step-item.text.text3-col1 .wrap {
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
  }
  .flow__step-item.text.text2-col2 .wrap,
  .flow__step-item.text.text3-col2 .wrap {
    width: -moz-fit-content;
    width: fit-content;
    margin-right: auto;
  }
  .flow__step-item.text.bg.text1-col1 .wrap::before {
    content: "";
    min-width: 255px;
    aspect-ratio: 0.93;
    background: url("../img/top/flow-step1-col1-pc.png") no-repeat center/contain;
    display: inline-block;
  }
  .flow__step-item.text.bg.text2-col1 .wrap::before {
    content: "";
    min-width: 255px;
    aspect-ratio: 0.93;
    background: url("../img/top/flow-step2-col1-pc.png") no-repeat center/contain;
    display: inline-block;
  }
  .flow__step-item.text.bg.text3-col1 .wrap::before {
    content: "";
    min-width: 255px;
    aspect-ratio: 0.93;
    background: url("../img/top/flow-step3-col1-pc.png") no-repeat center/contain;
    display: inline-block;
  }
  .flow__step-item.text.bg.text2-col2 .wrap::before {
    content: "";
    min-width: 255px;
    aspect-ratio: 0.93;
    background: url("../img/top/flow-step2-col2-pc.png") no-repeat center/contain;
    display: inline-block;
  }
  .flow__step-item.text.bg.text3-col2 .wrap::before {
    content: "";
    min-width: 255px;
    aspect-ratio: 0.93;
    background: url("../img/top/flow-step3-col2-pc.png") no-repeat center/contain;
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .flow__step-item {
    margin-top: 30px;
  }
  .flow__step-item.title {
    margin-bottom: 42px;
  }
  .flow__step-item.title2 {
    margin-top: 70px;
  }
  .flow__step-item.percent .box {
    margin: 0 auto;
  }
  .flow__step-item.text {
    padding-left: 90px;
  }
  .flow__step-item.text h4 {
    margin-inline: unset;
  }
  .flow__step-item.text::after {
    content: "";
    width: 80px;
    aspect-ratio: 80/82;
    position: absolute;
    top: 0;
    left: 0;
  }
  .flow__step-item.bg.text1::after {
    background: url("../img/top/flow-step1-col1-sp.png") no-repeat center/contain;
  }
  .flow__step-item.bg.text2-col1::after {
    background: url("../img/top/flow-step2-col1-sp.png") no-repeat center/contain;
  }
  .flow__step-item.bg.text3-col1::after {
    background: url("../img/top/flow-step3-col1-sp.png") no-repeat center/contain;
  }
  .flow__step-item.bg.text2-col2::after {
    background: url("../img/top/flow-step2-col2-sp.png") no-repeat center/contain;
  }
  .flow__step-item.bg.text3-col2::after {
    background: url("../img/top/flow-step3-col2-sp.png") no-repeat center/contain;
  }
  .flow__step-item.text1::before {
    content: "";
    width: 2px;
    height: 264%;
    background: url("../img/top/flow-line-ver.svg") no-repeat top center/cover;
    position: absolute;
    top: 60px;
    left: 38px;
  }
  .flow__step-item.text1-col2::before {
    height: 200%;
  }
}

@media only screen and (min-width: 1920px) {
  .flow.bg::after {
    background-size: 100% 100%;
  }
}
.reviews {
  padding: 180px 0 189px;
  margin: -90px 0 -120px;
}
.reviews.bg {
  background: url("../img/top/reviews-bg.png") no-repeat center/cover;
}
.reviews__list {
  margin-top: 100px;
}
.reviews__list-item {
  position: relative;
  z-index: 2;
  margin: 0 auto;
}
.reviews__list-item img {
  position: absolute;
  bottom: -6px;
}
.reviews__list-item .text {
  margin: 0 auto;
}
.reviews__list-item .text h3 {
  font-size: clamp(20px, 11.11px + 1.16vw, 25px);
  font-weight: 900;
  margin-bottom: 20px;
}
.reviews__list-item .text p {
  text-align: justify;
}
.reviews__list-item:not(:first-child) {
  margin-top: 80px;
}
.reviews__list-item:not(:nth-child(even)) {
  color: #fff;
}
.reviews__list-item:nth-child(even) .text h3 {
  color: var(--primary-color);
}
@media screen and (min-width: 768px) {
  .reviews__list-item {
    max-width: 811px;
    aspect-ratio: 811/390;
    padding-top: 77px;
  }
  .reviews__list-item.bg.item1 {
    background: url("../img/top/reviews-box-green1-pc.png") no-repeat center/contain;
  }
  .reviews__list-item.bg.item2 {
    background: url("../img/top/reviews-box-white2-pc.png") no-repeat center/contain;
  }
  .reviews__list-item.bg.item3 {
    background: url("../img/top/reviews-box-green3-pc.png") no-repeat center/contain;
  }
  .reviews__list-item img {
    left: clamp(-72px, 100.22px + -14.35vw, -10px);
    max-width: clamp(100px, 25.33px + 9.72vw, 142px);
  }
  .reviews__list-item .text {
    max-width: 561px;
  }
  .reviews__list-item:nth-child(even) img {
    right: clamp(-72px, 100.22px + -14.35vw, -10px);
    left: unset;
  }
}
@media screen and (max-width: 767px) {
  .reviews__list-item {
    max-width: 357px;
    aspect-ratio: 357/391;
    padding: 32px 20px 60px;
  }
  .reviews__list-item.bg.item1 {
    background: url("../img/top/reviews-box-green1-sp.png") no-repeat center/100% 100%;
  }
  .reviews__list-item.bg.item2 {
    background: url("../img/top/reviews-box-white2-sp.png") no-repeat center/100% 100%;
  }
  .reviews__list-item.bg.item3 {
    background: url("../img/top/reviews-box-green3-sp.png") no-repeat center/100% 100%;
  }
  .reviews__list-item img {
    left: 0;
    max-width: 50px;
  }
  .reviews__list-item .text {
    max-width: 303px;
    position: relative;
  }
  .reviews__list-item:nth-child(even) img {
    right: 0;
    left: unset;
  }
}

.faq {
  padding: 150px 0 600px;
}
.faq.bg {
  background: url("../img/top/faq-bg.png") no-repeat top/cover;
}
.faq .container {
  max-width: 1118px;
}
.faq__list {
  margin-top: clamp(37px, 25381px + -3300vw, 70px);
}
.faq__list-item .wrap {
  position: relative;
  z-index: 2;
}
.faq__list-item .wrap::after {
  content: "";
  display: block;
  position: relative;
  z-index: -1;
  left: 50%;
  transform: translateX(-50%);
  height: 100%;
}
.faq__list-item--1 .wrap {
  aspect-ratio: 514/475;
}
.faq__list-item--1 .wrap::after {
  background: url("../img/top/faq-box1.png") no-repeat center/100% 100%;
}
.faq__list-item--1 .text {
  max-width: clamp(290px, 217.11px + 9.49vw, 331px);
}
.faq__list-item--1 img {
  max-width: clamp(130px, -57.14px + 24.37vw, 284px);
  top: clamp(-76px, 3.75px + -5.7vw, -40px);
  left: clamp(-142px, 172.56px + -22.47vw, 0px);
}
.faq__list-item--2 .wrap {
  aspect-ratio: 388/403;
  max-width: clamp(330px, 226.89px + 13.43vw, 388px);
}
.faq__list-item--2 .wrap::after {
  background: url("../img/top/faq-box2.png") no-repeat center/100% 100%;
}
.faq__list-item--2 .text {
  max-width: clamp(230px, 164.22px + 8.56vw, 267px);
}
.faq__list-item--3 .wrap {
  aspect-ratio: 429/424;
  max-width: clamp(320px, 126.22px + 25.23vw, 429px);
}
.faq__list-item--3 .wrap::after {
  background: url("../img/top/faq-box3.png") no-repeat center/100% 100%;
}
.faq__list-item--3 .text {
  max-width: clamp(250px, 54.44px + 25.46vw, 360px);
}
.faq__list-item--4 .wrap {
  aspect-ratio: 572/529;
}
.faq__list-item--4 .wrap::after {
  background: url("../img/top/faq-box4.png") no-repeat center/100% 100%;
  height: 110%;
}
.faq__list-item--4 .text {
  max-width: clamp(300px, 88.44px + 27.55vw, 419px);
}
.faq__list-item--4 img {
  max-width: clamp(130px, -68.08px + 25.79vw, 293px);
  top: clamp(-115px, 6.84px + -8.7vw, -60px);
  right: clamp(-135px, 164.05px + -21.36vw, 0px);
}
.faq__list-item--5 .wrap {
  aspect-ratio: 514/475;
  max-width: clamp(420px, 252.89px + 21.76vw, 514px);
}
.faq__list-item--5 .wrap::after {
  background: url("../img/top/faq-box5.png") no-repeat center/100% 100%;
}
.faq__list-item--5 .text {
  max-width: clamp(290px, 122.89px + 21.76vw, 384px);
}
.faq__list-item--5 img {
  max-width: clamp(120px, -90.23px + 27.37vw, 293px);
  top: clamp(-90px, 20.76px + -7.91vw, -40px);
  left: clamp(-142px, 106.1px + -17.72vw, -30px);
  transform: rotate(-30deg);
}
.faq__list-item--6 .wrap {
  aspect-ratio: 458/452;
  max-width: clamp(380px, 241.33px + 18.06vw, 458px);
}
.faq__list-item--6 .wrap::after {
  background: url("../img/top/faq-box6.png") no-repeat center/100% 100%;
}
.faq__list-item--6 .text {
  max-width: clamp(280px, 137.78px + 18.52vw, 360px);
}
.faq__list-item .text {
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.faq__list-item img {
  position: absolute;
}
.faq__list-item .ques {
  font-size: clamp(16px, 13.7px + 0.82vw, 20px);
  font-weight: 700;
  color: var(--primary-color);
  padding-bottom: clamp(8px, -9.78px + 2.31vw, 18px);
  border-bottom: solid 2px var(--primary-color);
  margin-bottom: clamp(10px, -7.78px + 2.31vw, 20px);
}
.faq__list-item .ques span {
  position: relative;
  padding-left: 1.5em;
  display: inline-block;
}
.faq__list-item .ques span::before {
  content: "Q.";
  position: absolute;
  top: 0;
  left: 0;
}
.faq__list-item .ans {
  text-align: justify;
  -moz-text-align-last: center;
  text-align-last: center;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .faq__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .faq__list-item--1 {
    margin-top: 46px;
  }
  .faq__list-item--2 .wrap {
    margin: 0 auto;
  }
  .faq__list-item--3 {
    margin-top: 68px;
  }
  .faq__list-item--4 {
    margin-top: clamp(-45px, 80px + -10.42vw, 0px);
  }
  .faq__list-item--5 {
    margin-top: clamp(30px, -198.41px + 29.74vw, 99px);
  }
  .faq__list-item--6 {
    margin-top: 70px;
  }
  .faq__list-item--6 .wrap {
    margin-left: auto;
  }
}
@media screen and (max-width: 767px) {
  .faq__list-item {
    margin: 35px 0 0;
  }
  .faq__list-item .wrap {
    margin: 0 auto;
  }
  .faq__list-item--1 .wrap,
  .faq__list-item--4 .wrap {
    max-width: 440px;
  }
  .faq__list-item--1 .text,
  .faq__list-item--4 .text {
    max-width: clamp(240px, 211.25px + 10.27vw, 290px);
  }
  .faq__list-item--1 .wrap::after {
    height: 120%;
  }
  .faq__list-item--4 .wrap::after {
    height: 140%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1000px) {
  .faq__list-item--4 {
    margin-top: clamp(-180px, 164.83px + -34.48vw, -100px);
  }
  .faq__list-item--4 .wrap::after {
    height: 153%;
  }
  .faq__list-item--1 .wrap::after {
    height: 130%;
  }
}
@media only screen and (min-width: 1050px) {
  .faq__list-item .ans {
    line-height: 1.9;
  }
}
.fix_button {
  position: fixed;
  top: 40px;
  right: 40px;
  width: 89px;
  padding: 10px 0;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: bold;
  z-index: 90;
  border: 3px solid #15591d;
  box-shadow: 0px 4px 0px 0px #15591d;
  border-radius: 4px;
  font-size: 16px;
}
.fix_button::before {
  content: "";
  position: absolute;
  background: url(../img/top/flow-fairy1.png) no-repeat center/contain;
  left: -100px;
  top: -30px;
  width: 100px;
  height: 87px;
}
@media screen and (max-width: 767px) {
  .fix_button {
    top: auto;
    right: auto;
    width: 100px;
    font-size: 15px;
    bottom: 21px;
    left: 106px;
    display: none;
  }
}

.fix-content {
  position: fixed;
  right: 40px;
  top: 100px;
  z-index: 90;
  width: 360px;
  max-width: 100%;
  padding: 30px 0;
  padding-bottom: 20px;
  opacity: 0;
  visibility: hidden;
  transform: scale(0);
  backface-visibility: hidden;
  transition: all 0.4s ease;
  transform-origin: right top;
  border-radius: 60px;
  background: #fff;
  box-shadow: 6px 6px 8px #983700;
  border: 3px solid rgba(255, 92, 0, 0.8509803922);
}
.fix-content .close {
  position: absolute;
  top: -10px;
  left: 0px;
  /*   width: 50px;
    height: 50px; */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #333;
  width: 30px;
  height: 30px;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 4px;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .fix-content .close {
    display: none;
  }
}
.fix-content__inner {
  overflow: hidden;
  position: relative;
  padding-bottom: 10px;
}
.fix-content__inner::before {
  position: absolute;
  z-index: 2;
  content: "";
  display: inline-block;
  top: -180px;
  left: 0;
  width: 3rem;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.7607843137);
  transition: 500ms;
  animation: shinyshiny 2s ease-in-out infinite;
  pointer-events: none;
}
.fix-content .fix-title {
  font-weight: 900;
  line-height: 1;
  text-shadow: 3px 0px 0 #000, 2.7717px 1.1481px 0 #000, 2.1213px 2.1213px 0 #000, 1.1481px 2.7717px 0 #000, 0px 3px 0 #000, -1.1481px 2.7717px 0 #000, -2.1213px 2.1213px 0 #000, -2.7717px 1.1481px 0 #000, -3px 0px 0 #000, -2.7717px -1.1481px 0 #000, -2.1213px -2.1213px 0 #000, -1.1481px -2.7717px 0 #000, 0px -3px 0 #000, 1.1481px -2.7717px 0 #000, 2.1213px -2.1213px 0 #000, 2.7717px -1.1481px 0 #000;
  filter: drop-shadow(0 3px 0px #000);
  color: #ffe100;
  font-size: 1.5em;
}
.fix-content .fix-txt {
  color: #000;
  margin-top: 30px;
  font-weight: 900;
  line-height: 1.3;
  font-size: 1.1em;
  letter-spacing: 0;
}
.fix-content .fix-txt .organe {
  color: rgb(255, 92, 0);
  font-size: 1.4em;
  font-weight: 900;
}
.fix-content .fix-txt .green {
  color: #46af52;
  border-bottom: dashed 2px var(--primary-color);
}
@media screen and (max-width: 767px) {
  .fix-content .fix-txt {
    margin-top: 23px;
  }
}
.fix-content .fix-go {
  display: block;
  width: 220px;
  height: 50px;
  display: flex;
  margin-left: auto;
  margin-right: auto;
  align-items: center;
  justify-content: center;
  background-color: #46af52;
  margin-top: 20px;
  border: 3px solid #15591d;
  box-shadow: 0px 4px 0px 0px #15591d;
  border-radius: 50px;
  color: #fff;
  gap: 10px;
}
.fix-content .fix-go::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 14px solid #fff;
}
.fix-content.open {
  transform: scale(1);
  visibility: visible;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .fix-content {
    transform-origin: right bottom;
    width: 320px;
    padding: 25px 0;
    padding-bottom: 15px;
    top: auto;
    bottom: 30px;
    left: 0;
    right: 0;
    margin: auto;
  }
}

@keyframes poyopoyo {
  0%,
  40% {
    transform: rotate(0);
  }
  50%,
  70% {
    transform: rotate(2deg);
  }
  60%,
  80% {
    transform: rotate(-2deg);
  }
}
@media screen and (max-width: 767px) {
  .to__top:not(.abc) {
    display: none !important;
  }
  .to__top:not(.abc) {
    display: none !important;
  }
  .btn__line:not(.abc) {
    display: none !important;
  }
}
@keyframes shinyshiny {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
