@charset "UTF-8";
*,
:after,
:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 10px;
  font-size: clamp(6px, 1.6129vw, 10px);
  margin: 0;
}
body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 1.75;
  color: #000000;
  background: #ffffff;
  word-break: break-all;
  margin: 0;
  padding: 0;
  border: 0;
}
a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
h1,
h2 {
  line-height: 1.2;
}
h3,
h4 {
  line-height: 1.5;
}
h5,
h6 {
  line-height: inherit;
}
ol,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
ol ol,
ol ul,
ul ol,
ul ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}
b,
strong {
  font-weight: bolder;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}
a {
  color: inherit;
  text-decoration: none;
}
img {
  vertical-align: middle;
  border-style: none;
  height: auto;
}
svg {
  overflow: hidden;
  vertical-align: middle;
}
[role="button"] {
  cursor: pointer;
}
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled),
button:not(:disabled) {
  cursor: pointer;
}
button {
  outline: none;
  border: none;
  cursor: pointer;
}
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}
textarea {
  overflow: auto;
  resize: none;
}
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}
[hidden] {
  display: none !important;
}
:focus {
  outline: none;
}
.clearfix:after {
  content: "";
  visibility: hidden;
  height: 0;
  display: block;
  font-size: 0;
  clear: both;
}
* html .clearfix {
  zoom: 1;
}
:first-child + html .clearfix {
  zoom: 1;
}
#wrapper {
  position: relative;
  width: 100%;
}
@media print, screen and (min-width: 769px) {
  .pc-hide,
  .sp-only {
    display: none !important;
  }
}
@media only screen and (max-width: 768px) {
  .pc-only,
  .sp-hide {
    display: none !important;
  }
}
#wrapper {
  position: relative;
  width: 100%;
  max-width: 62rem;
  background: #efe8e3;
  margin: 0 auto;
}
main {
  position: relative;
}
main #main {
  overflow: hidden;
}
.container,
.container-fluid {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-right: auto;
  margin-left: auto;
}
.container {
  max-width: 114rem;
}
@media only screen and (max-width: 768px) {
  .container {
    max-width: 66rem;
  }
}
.content-in {
  position: relative;
  max-width: 94rem;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
figure,
picture {
  position: relative;
  display: block;
  line-height: 1;
  width: 100%;
  padding: 0;
  margin: 0;
  overflow: hidden;
  z-index: 0;
}
figure img,
picture img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  margin: 0;
  border: none;
}
.color-sky {
  color: #53a0ed !important;
}
.color-orange {
  color: #ff6a00 !important;
}
.color-yellow {
  color: #ffe200 !important;
}
.color-red {
  color: #e60012 !important;
}
.color-blue {
  color: #113892 !important;
}
.color-wheat {
  color: #27b7b3 !important;
}
@-webkit-keyframes zoom {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  to {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
@keyframes zoom {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  to {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
.link-btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0.5rem 0.5rem;
  width: 54rem;
  max-width: 100%;
  height: 10rem;
  background: #53b7c6;
  font-family: "Noto Serif JP", serif;
  font-size: 2.8rem;
  font-weight: 600;
  line-height: 3.6rem;
  color: #ffffff;
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
  border-radius: 8rem;
  overflow: hidden;
  -webkit-box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  z-index: 0;
  margin: 0 auto;
}
.link-btn span {
  position: relative;
  display: inline-block;
  padding-bottom: 0.5rem;
  color: inherit;
  text-decoration: none;
  z-index: 3;
  font-weight: 800;
}
.link-btn span:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  background: #ffffff;
  z-index: 1;
}
.section-title {
  position: relative;
  margin-bottom: 5rem;
}
.section-title p {
  position: relative;
  display: block;
  font-family: "Zapfino", sans-serif;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 0.1rem;
  padding-top: 4.5rem;
  text-align: center;
  color: #3c1f0a;
  margin-bottom: -0.2rem;
}
.section-title h2 {
  position: relative;
  display: block;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 4.5rem;
  text-align: center;
  color: #3c1f0a;
}
.section-label {
  position: relative;
  margin-bottom: 5rem;
}
.section-label h2 {
  position: relative;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 5rem;
  color: #3c1f0a;
  text-align: center;
}
.section-label h2 span {
  display: inline;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(70%, transparent),
    color-stop(70%, #ffff80)
  );
  background: linear-gradient(to bottom, transparent 70%, #ffff80 70%);
}
.section-desc {
  position: relative;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.75;
  text-align: left;
  margin-bottom: 6rem;
}
@media only screen and (max-width: 768px) {
  .section-desc {
    margin-bottom: 4rem;
  }
}
.underbg {
  position: relative;
  display: inline;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(65%, transparent),
    color-stop(65%, #ffff00)
  );
  background: linear-gradient(to bottom, transparent 65%, #ffff00 65%);
}
#header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  z-index: 991;
}
#header .container {
  max-width: 66rem;
}
#header .header-wrapper {
  position: relative;
  display: block;
  margin: 0;
}
#header .header-wrapper:after {
  content: "";
  display: block;
  clear: both;
}
#header .header-wrapper .header-logo {
  position: relative;
  padding: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.4rem 0 0.4rem;
  float: left;
}
#header .header-wrapper .header-logo a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0;
  margin: 0;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  color: #ffffff;
  gap: 1rem;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
}
#header .header-wrapper .header-logo a img {
  position: relative;
  display: block;
  width: 3.2rem;
  height: auto;
  border: none;
  margin: 0;
}
#header .header-wrapper .header-logo a span {
  position: relative;
  display: block;
  color: inherit;
  text-decoration: none;
  padding-bottom: 1rem;
}
#header .header-wrapper .header-hint {
  position: relative;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  float: right;
  font-size: 2rem;
  font-weight: 700;
  line-height: 3.2rem;
  color: #ffffff;
  text-align: center;
  white-space: nowrap;
  padding: 1.8rem 0 1.6rem 0;
}
#header .header-wrapper .header-hint:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1.2rem;
  background-image: url(../image/mainvisual-title-border.svg);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}
#header .header-wrapper .header-hint strong {
  font-size: 3.2rem;
  font-weight: 700;
}
#header .header-wrapper .header-hint em {
  font-style: normal;
  font-size: 2.8rem;
  font-weight: 700;
}
.mobile-nav-toggle {
  position: fixed;
  right: 0;
  top: 0;
  width: 6rem;
  height: 6rem;
  padding: 1.9rem 1.6rem;
  background: transparent;
  display: none;
  border: none;
  outline: none;
  cursor: pointer;
  z-index: 999;
  margin: 0;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
@media only screen and (max-width: 768px) {
  .mobile-nav-toggle {
    display: inline-block;
  }
}
.mobile-nav-toggle .toggle-icon {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
}
.mobile-nav-toggle .toggle-icon span {
  display: inline-block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: #000000;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  -webkit-transform-origin: center center;
  transform-origin: center center;
}
.mobile-nav-toggle .toggle-icon span:first-child {
  top: 0;
}
.mobile-nav-toggle .toggle-icon span:nth-child(2) {
  top: calc(50% - 1px);
}
.mobile-nav-toggle .toggle-icon span:nth-child(3) {
  bottom: 0;
}
.mobile-nav-toggle.toggle-active .toggle-icon span {
  background: #ffffff;
}
.mobile-nav-toggle.toggle-active .toggle-icon span:first-child {
  -webkit-transform: translateY(1rem) rotate(-45deg);
  transform: translateY(1rem) rotate(-45deg);
}
.mobile-nav-toggle.toggle-active .toggle-icon span:nth-child(2) {
  opacity: 0;
  visibility: hidden;
}
.mobile-nav-toggle.toggle-active .toggle-icon span:nth-child(3) {
  -webkit-transform: translateY(-1rem) rotate(45deg);
  transform: translateY(-1rem) rotate(45deg);
}
#mobile-nav {
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 998;
  right: -100%;
  width: 80%;
  max-width: 50rem;
  overflow-y: auto;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
  background: #333333;
}
#mobile-nav .mobile-logo {
  position: relative;
  padding: 1.8rem 2rem;
  background: #ffffff;
  height: 6rem;
}
#mobile-nav .mobile-logo a {
  position: relative;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0;
  margin: 0;
  font-family: "Yu Gothic", sans-serif;
  font-weight: 700;
  font-size: 3.2rem;
  line-height: 1;
  letter-spacing: 0;
  color: #262626;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
}
@media only screen and (max-width: 768px) {
  #mobile-nav .mobile-logo a {
    font-size: 2.4rem;
  }
}
#mobile-nav .mobile-nav-container {
  position: relative;
  padding: 6rem 2rem 2rem;
}
#mobile-nav .mobile-nav-menu {
  position: relative;
  list-style: none;
  display: block;
}
#mobile-nav .mobile-nav-menu > li {
  position: relative;
  display: block;
  border-bottom: 1px solid #ffffff;
}
#mobile-nav .mobile-nav-menu > li > a {
  position: relative;
  display: block;
  width: 100%;
  padding: 1.6rem 0;
  font-weight: 900;
  font-size: 1.6rem;
  line-height: 2.8rem;
  letter-spacing: 0.1em;
  text-align: left;
  color: #ffffff;
  text-decoration: none;
  outline: none;
}
#mobile-nav .mobile-nav-menu > li > a strong {
  display: inline-block;
  font-family: "Zapfino", sans-serif;
  font-weight: 600;
  font-size: 2.6rem;
  line-height: 1;
  color: inherit;
  text-decoration: none;
}
#mobile-nav .mobile-nav-menu > li > a span {
  color: inherit;
  text-decoration: none;
}
#mobile-nav .mobile-nav-menu .drop-down > a:after {
  content: "";
  position: absolute;
  top: calc(50% - 3px);
  right: 0;
  display: inline-block;
  width: 10px;
  height: 6px;
  background-image: url(../img/common/icon-down.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 2;
}
#mobile-nav .mobile-nav-menu .drop-down ul {
  display: none;
  overflow: hidden;
}
#mobile-nav .mobile-nav-menu .drop-down li {
  padding-left: 16px;
  border-bottom: 1px solid #323232;
}
#mobile-nav .mobile-nav-menu .drop-down li a {
  position: relative;
  display: block;
  width: 100%;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 2.4rem;
  text-align: left;
  color: #323232;
  padding: 1.6rem 0;
  text-decoration: none;
  outline: none;
}
#mobile-nav .mobile-nav-menu .drop-down.active > a:after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  -webkit-transform-origin: center center;
  transform-origin: center center;
}
#mobile-nav .mobile-nav-action {
  margin-top: 3rem;
}
#mobile-nav .mobile-nav-action .action-btn {
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 1rem;
  width: 22rem;
  max-width: 100%;
  height: 5rem;
  padding: 1rem 1rem;
  background: #ff6a00;
  border: 1px solid #ff6a00;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1;
  color: #ffffff;
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
  -webkit-transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  border-radius: 5rem;
  cursor: pointer;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  z-index: 0;
}
#mobile-nav .mobile-nav-action .action-btn span {
  position: relative;
  color: inherit;
  text-decoration: none;
  z-index: 3;
}
#mobile-nav .mobile-nav-action .action-btn svg {
  display: block;
  width: 1.6rem;
  height: auto;
  z-index: 3;
}
#mobile-nav .mobile-nav-action .action-btn svg path {
  -webkit-transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
}
#mobile-nav .mobile-nav-action .action-btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  background: #ffffff;
  width: 100%;
  height: 100%;
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1),
    -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  z-index: 1;
}
#mobile-nav .mobile-nav-action .action-btn:hover {
  color: #ff6a00;
}
#mobile-nav .mobile-nav-action .action-btn:hover svg path {
  fill: #ff6a00;
}
#mobile-nav .mobile-nav-action .action-btn:hover:before {
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}
.fixed-mail-btn {
  position: fixed;
  top: 0;
  right: 12rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 1rem 1rem;
  width: 6rem;
  height: 6rem;
  background: #9e8459;
  border: 2px solid #9e8459;
  text-align: center;
  text-decoration: none;
  overflow: hidden;
  z-index: 996;
}
@media print, screen and (min-width: 769px) {
  .fixed-mail-btn {
    display: none;
  }
}
.fixed-mail-btn span {
  position: relative;
  color: inherit;
  text-decoration: none;
  -webkit-transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  z-index: 3;
}
.fixed-mail-btn svg {
  position: relative;
  display: block;
  width: 2.2rem;
  z-index: 3;
}
.fixed-mail-btn svg path {
  -webkit-transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
}
.fixed-mail-btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  background: #ffffff;
  width: 100%;
  height: 100%;
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1),
    -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  z-index: 1;
}
.fixed-mail-btn:hover {
  color: #9e8459;
}
.fixed-mail-btn:hover svg path {
  fill: #9e8459;
}
.fixed-mail-btn:hover:before {
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}
.fixed-apply {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0;
  z-index: 996;
}
.fixed-apply .apply-btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  max-width: 62rem;
  height: 12rem;
  background: #61becc;
  font-size: 2.8rem;
  line-height: 3rem;
  font-weight: 700;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  -webkit-box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  overflow: hidden;
  padding: 1rem 2rem;
  margin: 0 auto;
  z-index: 0;
}
.fixed-apply .apply-btn span {
  position: relative;
  display: block;
  padding: 0 6rem 0.2rem 0;
  color: inherit;
  text-decoration: none;
  z-index: 3;
}
.fixed-apply .apply-btn span:before {
  content: "";
  position: absolute;
  top: 0;
  right: 4rem;
  bottom: 0;
  width: 2px;
  background: #ffffff;
  z-index: 1;
}
.fixed-apply .apply-btn span:after {
  content: "";
  position: absolute;
  top: calc(50% - 0.8rem);
  right: 0;
  width: 2.2rem;
  height: 1.6rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21.676' height='15.302' viewBox='0 0 21.676 15.302'%3E%3Cline id='Line_22' data-name='Line 22' x2='18' transform='translate(0 7.639)' fill='none' stroke='%23fff' stroke-width='3'/%3E%3Cpath id='Path_6000' data-name='Path 6000' d='M491,859.148l7.828,6.471L491,872.141' transform='translate(-479.5 -857.991)' fill='none' stroke='%23fff' stroke-width='3'/%3E%3C/svg%3E%0A");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 1;
}
.mobile-nav-overly {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 990;
  background: transparent;
  display: none;
  overflow: hidden;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
body.mobile-nav-active #mobile-nav {
  right: 0;
}
@media only screen and (max-width: 768px) {
  [data-aos="zoom-in"] {
    -webkit-transform: scale(0.85);
    transform: scale(0.85);
  }
  [data-aos="fade-up"] {
    -webkit-transform: translate3d(0, 30px, 0);
    transform: translate3d(0, 30px, 0);
  }
  [data-aos="fade-left"] {
    -webkit-transform: translate3d(-30px, 0, 0);
    transform: translate3d(-30px, 0, 0);
  }
  [data-aos="fade-right"] {
    -webkit-transform: translate3d(30px, 0, 0);
    transform: translate3d(30px, 0, 0);
  }
}
#footer {
  position: relative;
  padding: 2.5rem 0 2.5rem;
  background: #313131;
  margin-bottom: 7.9rem;
}
#footer .copyright {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 3rem;
  color: #ffffff;
  text-align: center;
}
.mainvisual {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-image: url(../image/mainvisual-bg.png);
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  padding: 8rem 0 3rem;
  height: 93rem;
  overflow: hidden;
  margin: 0;
  z-index: 0;
}
.mainvisual .container {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  z-index: 1;
}
.mainvisual .section-wrapper {
  position: relative;
}
.mainvisual .mainvisual-title {
  position: relative;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto;
}
.mainvisual .mainvisual-title p {
  position: relative;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 4.5rem;
  text-align: left;
  color: #ffffff;
  padding: 0 2rem;
  margin-bottom: 0.8rem;
}
.mainvisual .mainvisual-title h2 {
  position: relative;
  display: block;
  max-width: 100%;
  padding: 0 2rem;
}
.mainvisual .mainvisual-title h2 span {
  position: relative;
  display: block;
  font-size: 5.6rem;
  font-weight: 700;
  line-height: 7.2rem;
  color: #ffffff;
  text-align: center;
}
.mainvisual .mainvisual-title h2 strong {
  position: relative;
  display: block;
  font-weight: 700;
  font-size: 10rem;
  line-height: 10rem;
  color: #ffffff;
  text-align: center;
}
.mainvisual .mainvisual-title h3 {
  position: relative;
  display: block;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 4.5rem;
  text-align: center;
  color: #ffffff;
  margin-top: 2rem;
}
.mainvisual .mainvisual-desc {
  position: relative;
  display: block;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 3.2rem;
  color: #ffffff;
  text-align: left;
  padding: 0 2rem;
  margin-top: 3.6rem;
}
.mainvisual .mainvisual-desc > li {
  position: relative;
  display: block;
}
.mainvisual .mainvisual-tip {
  position: absolute;
  top: 9rem;
  left: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 14rem;
  height: 14rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='140' height='140' viewBox='0 0 140 140'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='-3.441' y1='3.104' x2='5.887' y2='-3.059' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23f7b971'/%3E%3Cstop offset='0.235' stop-color='%23fde7b0'/%3E%3Cstop offset='0.35' stop-color='%23fdedd8'/%3E%3Cstop offset='0.456' stop-color='%23fde7b0'/%3E%3Cstop offset='0.597' stop-color='%23f7b971'/%3E%3Cstop offset='0.734' stop-color='%23fde7b0'/%3E%3Cstop offset='0.981' stop-color='%23f7b971'/%3E%3C/linearGradient%3E%3ClinearGradient id='linear-gradient-2' x1='-3.82' y1='3.355' x2='6.405' y2='-3.403' xlink:href='%23linear-gradient'/%3E%3C/defs%3E%3Cg id='アイコン_枠' transform='translate(69.218 69.242)'%3E%3Cg id='Group_6806' data-name='Group 6806' transform='translate(-69.218 -69.242)'%3E%3Cpath id='Path_5997' data-name='Path 5997' d='M68.775,138.71a1.3,1.3,0,0,1,1.3-1.3h0a1.3,1.3,0,0,1,1.3,1.3h0a1.29,1.29,0,0,1-1.29,1.3h0A1.3,1.3,0,0,1,68.775,138.71Zm-2.841,1.175h-.007a1.289,1.289,0,0,1-1.219-1.37h0a1.3,1.3,0,0,1,1.37-1.218h0a1.3,1.3,0,0,1,1.218,1.37h0a1.291,1.291,0,0,1-1.291,1.225h0A.264.264,0,0,1,65.934,139.885Zm6.915-1.225a1.3,1.3,0,0,1,1.219-1.37h0a1.3,1.3,0,0,1,1.377,1.218h0a1.3,1.3,0,0,1-1.219,1.369h-.08A1.3,1.3,0,0,1,72.849,138.66Zm-11.054.872H61.8a1.309,1.309,0,0,1-1.146-1.442h0a1.3,1.3,0,0,1,1.442-1.139h0a1.3,1.3,0,0,1,1.139,1.441h0a1.3,1.3,0,0,1-1.283,1.146h0C61.9,139.539,61.852,139.532,61.795,139.532Zm15.121-1.153a1.288,1.288,0,0,1,1.132-1.442h0a1.292,1.292,0,0,1,1.442,1.132h0a1.3,1.3,0,0,1-1.132,1.442h0a1.318,1.318,0,0,1-.159.007h0A1.287,1.287,0,0,1,76.916,138.378Zm-19.223.548a1.3,1.3,0,0,1-1.053-1.506h0a1.3,1.3,0,0,1,1.507-1.053h0a1.3,1.3,0,0,1,1.053,1.507h0a1.309,1.309,0,0,1-1.277,1.074h0A1.222,1.222,0,0,1,57.693,138.926Zm23.261-1.074A1.294,1.294,0,0,1,82,136.346h0a1.294,1.294,0,0,1,1.507,1.045h0A1.289,1.289,0,0,1,82.46,138.9h0a1.284,1.284,0,0,1-.231.022h0A1.291,1.291,0,0,1,80.953,137.852Zm-27.32.231a1.3,1.3,0,0,1-.959-1.564h0a1.289,1.289,0,0,1,1.565-.958h0a1.3,1.3,0,0,1,.959,1.557h0a1.305,1.305,0,0,1-1.262,1h0A1.432,1.432,0,0,1,53.633,138.083Zm31.322-.995a1.29,1.29,0,0,1,.952-1.564h0a1.291,1.291,0,0,1,1.565.952h0a1.3,1.3,0,0,1-.952,1.571h0a1.5,1.5,0,0,1-.31.036h0A1.292,1.292,0,0,1,84.955,137.088Zm-35.332-.093h.007a1.3,1.3,0,0,1-.872-1.614h0a1.307,1.307,0,0,1,1.623-.872h0a1.3,1.3,0,0,1,.865,1.622h0a1.3,1.3,0,0,1-1.24.922h0A1.406,1.406,0,0,1,49.623,136.995Zm39.276-.9a1.293,1.293,0,0,1,.865-1.622h0a1.292,1.292,0,0,1,1.615.858h0a1.3,1.3,0,0,1-.858,1.622h0a1.4,1.4,0,0,1-.382.057h0A1.3,1.3,0,0,1,88.9,136.094Zm-43.212-.425A1.291,1.291,0,0,1,44.923,134h0a1.3,1.3,0,0,1,1.665-.771h0a1.305,1.305,0,0,1,.765,1.672h0a1.306,1.306,0,0,1-1.219.844h0A1.225,1.225,0,0,1,45.687,135.669Zm47.092-.815a1.3,1.3,0,0,1,.764-1.665h0a1.3,1.3,0,0,1,1.673.757h0a1.306,1.306,0,0,1-.765,1.673h0A1.271,1.271,0,0,1,94,135.7h0A1.294,1.294,0,0,1,92.779,134.854Zm-50.95-.743a1.3,1.3,0,0,1-.663-1.708h0a1.307,1.307,0,0,1,1.716-.67h-.008a1.3,1.3,0,0,1,.671,1.709h0a1.3,1.3,0,0,1-1.19.778h0A1.364,1.364,0,0,1,41.829,134.111Zm54.749-.713a1.293,1.293,0,0,1,.656-1.715h0a1.306,1.306,0,0,1,1.716.663h0a1.3,1.3,0,0,1-.663,1.715h0a1.369,1.369,0,0,1-.527.108h0A1.288,1.288,0,0,1,96.579,133.4Zm-58.5-1.074h0a1.3,1.3,0,0,1-.563-1.744h0a1.291,1.291,0,0,1,1.745-.562h.007a1.3,1.3,0,0,1,.563,1.744h0a1.3,1.3,0,0,1-1.16.707h0A1.254,1.254,0,0,1,38.08,132.324Zm62.2-.613a1.288,1.288,0,0,1,.563-1.744h-.007a1.3,1.3,0,0,1,1.752.555h0a1.3,1.3,0,0,1-.556,1.751h-.007a1.32,1.32,0,0,1-.591.144h0A1.3,1.3,0,0,1,100.277,131.711ZM34.446,130.32a1.3,1.3,0,0,1-.461-1.781h0a1.3,1.3,0,0,1,1.781-.454h0a1.3,1.3,0,0,1,.454,1.78h0a1.306,1.306,0,0,1-1.117.635h0A1.27,1.27,0,0,1,34.446,130.32Zm69.43-.512a1.287,1.287,0,0,1,.454-1.773h0a1.287,1.287,0,0,1,1.774.454h0a1.287,1.287,0,0,1-.454,1.773h0a1.211,1.211,0,0,1-.657.187h0A1.288,1.288,0,0,1,103.876,129.809Zm-72.942-1.7a1.294,1.294,0,0,1-.353-1.8h0a1.292,1.292,0,0,1,1.8-.353h0a1.3,1.3,0,0,1,.347,1.8h0a1.291,1.291,0,0,1-1.075.57h0A1.3,1.3,0,0,1,30.934,128.107Zm76.418-.411a1.293,1.293,0,0,1,.353-1.8h0a1.291,1.291,0,0,1,1.8.353h0a1.3,1.3,0,0,1-.346,1.8h0a1.293,1.293,0,0,1-.729.223h0A1.3,1.3,0,0,1,107.351,127.7ZM27.56,125.685a1.3,1.3,0,0,1-.245-1.816h0a1.291,1.291,0,0,1,1.817-.245h0a1.3,1.3,0,0,1,.245,1.816h0a1.3,1.3,0,0,1-1.031.512h0A1.277,1.277,0,0,1,27.56,125.685Zm83.144-.3a1.291,1.291,0,0,1,.238-1.817h0a1.312,1.312,0,0,1,1.824.238h0a1.3,1.3,0,0,1-.245,1.824h0a1.3,1.3,0,0,1-.787.267h0A1.272,1.272,0,0,1,110.7,125.383Zm-86.368-2.314h0a1.292,1.292,0,0,1-.137-1.831h0a1.3,1.3,0,0,1,1.832-.13V121.1a1.306,1.306,0,0,1,.136,1.831h0a1.287,1.287,0,0,1-.987.454h0A1.273,1.273,0,0,1,24.336,123.069Zm89.57-.194a1.306,1.306,0,0,1,.137-1.831h0a1.307,1.307,0,0,1,1.831.137h0a1.3,1.3,0,0,1-.137,1.831h0a1.308,1.308,0,0,1-.844.317h0A1.289,1.289,0,0,1,113.906,122.874Zm-92.634-2.6a1.29,1.29,0,0,1-.029-1.831h0a1.29,1.29,0,0,1,1.831-.029h0a1.282,1.282,0,0,1,.029,1.831h0a1.271,1.271,0,0,1-.93.4h0A1.291,1.291,0,0,1,21.272,120.272Zm95.691-.086a1.293,1.293,0,0,1,.029-1.838h0a1.3,1.3,0,0,1,1.831.028h0a1.289,1.289,0,0,1-.029,1.831h0a1.275,1.275,0,0,1-.9.368h0A1.3,1.3,0,0,1,116.962,120.186ZM18.38,117.3h0a1.3,1.3,0,0,1,.08-1.838h0a1.3,1.3,0,0,1,1.832.08h0a1.305,1.305,0,0,1-.08,1.838h0a1.321,1.321,0,0,1-.88.339h0A1.3,1.3,0,0,1,18.38,117.3Zm101.474.015a1.284,1.284,0,0,1-.08-1.831h0a1.291,1.291,0,0,1,1.831-.086h0a1.3,1.3,0,0,1,.08,1.831h0a1.287,1.287,0,0,1-.959.425h0A1.3,1.3,0,0,1,119.854,117.317Zm-104.185-3.15h0a1.309,1.309,0,0,1,.18-1.831h0a1.311,1.311,0,0,1,1.832.188h0a1.3,1.3,0,0,1-.187,1.831h0a1.316,1.316,0,0,1-.823.288h0A1.3,1.3,0,0,1,15.669,114.167Zm106.9.115a1.3,1.3,0,0,1-.195-1.824h0a1.3,1.3,0,0,1,1.824-.195h0a1.3,1.3,0,0,1,.195,1.824h0a1.3,1.3,0,0,1-1.01.483h0A1.279,1.279,0,0,1,122.572,114.282ZM13.146,110.873a1.293,1.293,0,0,1,.3-1.81h0a1.3,1.3,0,0,1,1.81.3h0a1.294,1.294,0,0,1-.3,1.809h0a1.293,1.293,0,0,1-.757.245h0A1.289,1.289,0,0,1,13.146,110.873Zm111.957.216a1.293,1.293,0,0,1-.3-1.809h0a1.3,1.3,0,0,1,1.81-.3h0a1.294,1.294,0,0,1,.3,1.809h.007a1.313,1.313,0,0,1-1.06.541h0A1.3,1.3,0,0,1,125.1,111.089ZM10.824,107.442h0a1.3,1.3,0,0,1,.4-1.795h0a1.306,1.306,0,0,1,1.8.4h0a1.3,1.3,0,0,1-.4,1.787h0a1.285,1.285,0,0,1-.692.2h0A1.286,1.286,0,0,1,10.824,107.442Zm116.623.317a1.3,1.3,0,0,1-.4-1.795h0a1.3,1.3,0,0,1,1.789-.4h0a1.3,1.3,0,0,1,.4,1.795h0v-.007h0a1.276,1.276,0,0,1-1.1.606h0A1.345,1.345,0,0,1,127.446,107.759ZM8.7,103.874h0a1.3,1.3,0,0,1,.512-1.766h0a1.3,1.3,0,0,1,1.76.512h0a1.292,1.292,0,0,1-.505,1.759h0a1.255,1.255,0,0,1-.627.166h0A1.313,1.313,0,0,1,8.7,103.874Zm120.885.411a1.293,1.293,0,0,1-.512-1.759h0a1.3,1.3,0,0,1,1.766-.512h0a1.293,1.293,0,0,1,.5,1.766h0a1.291,1.291,0,0,1-1.132.67h0A1.221,1.221,0,0,1,129.588,104.285ZM6.807,100.191a1.3,1.3,0,0,1,.613-1.73h0a1.287,1.287,0,0,1,1.724.613h0a1.3,1.3,0,0,1-.605,1.73h0a1.285,1.285,0,0,1-.563.13h0A1.294,1.294,0,0,1,6.807,100.191Zm124.713.5a1.294,1.294,0,0,1-.613-1.73h0a1.307,1.307,0,0,1,1.73-.613h0a1.309,1.309,0,0,1,.613,1.73h0a1.305,1.305,0,0,1-1.175.743h0A1.274,1.274,0,0,1,131.521,100.7ZM5.127,96.407a1.306,1.306,0,0,1,.714-1.694h0a1.306,1.306,0,0,1,1.694.713h0a1.305,1.305,0,0,1-.714,1.694h0a1.293,1.293,0,0,1-.49.093h0A1.3,1.3,0,0,1,5.127,96.407ZM133.237,97a1.3,1.3,0,0,1-.721-1.687h0a1.31,1.31,0,0,1,1.7-.721h0a1.305,1.305,0,0,1,.713,1.694h0a1.294,1.294,0,0,1-1.2.808h0A1.285,1.285,0,0,1,133.237,97ZM3.678,92.522a1.3,1.3,0,0,1,.815-1.651h0a1.3,1.3,0,0,1,1.644.814h0a1.306,1.306,0,0,1-.815,1.651h0a1.365,1.365,0,0,1-.411.065h0A1.305,1.305,0,0,1,3.678,92.522Zm131.044.677a1.3,1.3,0,0,1-.815-1.644h0a1.3,1.3,0,0,1,1.644-.814h0a1.3,1.3,0,0,1,.822,1.643h-.008a1.3,1.3,0,0,1-1.225.887h0A1.218,1.218,0,0,1,134.723,93.2ZM2.459,88.557a1.311,1.311,0,0,1,.916-1.6h0a1.308,1.308,0,0,1,1.594.909H4.962a1.3,1.3,0,0,1-.9,1.6h0a1.423,1.423,0,0,1-.347.043h0A1.3,1.3,0,0,1,2.459,88.557Zm133.525.771a1.29,1.29,0,0,1-.909-1.593h0a1.3,1.3,0,0,1,1.594-.909h0a1.3,1.3,0,0,1,.909,1.593h0a1.293,1.293,0,0,1-1.248.952h0A1.414,1.414,0,0,1,135.984,89.328ZM1.486,84.521a1.292,1.292,0,0,1,1-1.535h0a1.3,1.3,0,0,1,1.536,1h0a1.294,1.294,0,0,1-1,1.536h0a1.174,1.174,0,0,1-.267.028h0A1.294,1.294,0,0,1,1.486,84.521Zm135.522.872a1.307,1.307,0,0,1-1-1.543h0a1.3,1.3,0,0,1,1.536-1h0a1.294,1.294,0,0,1,1,1.536h0a1.3,1.3,0,0,1-1.269,1.03h0A1.7,1.7,0,0,1,137.008,85.393ZM.75,80.441A1.3,1.3,0,0,1,1.84,78.963h0a1.308,1.308,0,0,1,1.478,1.1h0a1.29,1.29,0,0,1-1.089,1.47h0a.937.937,0,0,1-.195.014h0A1.3,1.3,0,0,1,.75,80.441Zm137.051.951a1.3,1.3,0,0,1-1.1-1.47h0a1.3,1.3,0,0,1,1.471-1.1h0a1.3,1.3,0,0,1,1.1,1.477h0V80.3h0a1.3,1.3,0,0,1-1.284,1.11h0A.86.86,0,0,1,137.8,81.392ZM.26,76.325a1.29,1.29,0,0,1,1.175-1.406h0a1.294,1.294,0,0,1,1.406,1.175h0A1.294,1.294,0,0,1,1.666,77.5h0a.669.669,0,0,1-.115.007h0A1.3,1.3,0,0,1,.26,76.325Zm138.088,1.038a1.3,1.3,0,0,1-1.175-1.405h0a1.293,1.293,0,0,1,1.4-1.182h0a1.294,1.294,0,0,1,1.182,1.405h0a1.293,1.293,0,0,1-1.29,1.182h-.116ZM.008,72.188A1.3,1.3,0,0,1,1.27,70.847h0A1.3,1.3,0,0,1,2.6,72.108h0a1.3,1.3,0,0,1-1.255,1.334H1.306A1.3,1.3,0,0,1,.008,72.188Zm138.658,1.117a1.3,1.3,0,0,1-1.262-1.334h0a1.293,1.293,0,0,1,1.334-1.262h0A1.307,1.307,0,0,1,140,72.044h0a1.3,1.3,0,0,1-1.3,1.262h-.036ZM1.262,69.369A1.307,1.307,0,0,1,0,68.036H0a1.3,1.3,0,0,1,1.334-1.261h0A1.3,1.3,0,0,1,2.6,68.108h0a1.3,1.3,0,0,1-1.3,1.261H1.262Zm136.135-1.4a1.306,1.306,0,0,1,1.262-1.334h0a1.3,1.3,0,0,1,1.334,1.262h0a1.3,1.3,0,0,1-1.255,1.334H138.7A1.3,1.3,0,0,1,137.4,67.971ZM1.422,65.3A1.3,1.3,0,0,1,.238,63.9h0a1.305,1.305,0,0,1,1.406-1.182h0a1.306,1.306,0,0,1,1.183,1.405h0a1.3,1.3,0,0,1-1.291,1.19h0C1.493,65.312,1.457,65.3,1.422,65.3Zm135.745-1.319a1.294,1.294,0,0,1,1.176-1.405h0a1.3,1.3,0,0,1,1.413,1.175h0a1.311,1.311,0,0,1-1.182,1.412h-.115A1.294,1.294,0,0,1,137.166,63.985ZM1.818,61.253a1.306,1.306,0,0,1-1.1-1.477h0a1.307,1.307,0,0,1,1.478-1.1h0a1.307,1.307,0,0,1,1.1,1.477h0a1.312,1.312,0,0,1-1.284,1.11h0A1.461,1.461,0,0,1,1.818,61.253ZM136.7,60.021a1.3,1.3,0,0,1,1.089-1.478h0a1.307,1.307,0,0,1,1.478,1.1h0a1.3,1.3,0,0,1-1.1,1.477h0a1.673,1.673,0,0,1-.187.014h0A1.3,1.3,0,0,1,136.7,60.021ZM2.445,57.231a1.294,1.294,0,0,1-1-1.535h0a1.3,1.3,0,0,1,1.537-1.009h0a1.3,1.3,0,0,1,1,1.535h0a1.288,1.288,0,0,1-1.269,1.031h0A1.754,1.754,0,0,1,2.445,57.231Zm133.546-1.146a1.3,1.3,0,0,1,1-1.535h0a1.294,1.294,0,0,1,1.536,1.009h0a1.291,1.291,0,0,1-1,1.535h0a1.608,1.608,0,0,1-.267.029h0A1.306,1.306,0,0,1,135.991,56.085ZM3.318,53.253a1.29,1.29,0,0,1-.909-1.593h0a1.282,1.282,0,0,1,1.586-.908h0a1.293,1.293,0,0,1,.916,1.586h0a1.292,1.292,0,0,1-1.254.958h0A1.427,1.427,0,0,1,3.318,53.253Zm131.736-1.045a1.3,1.3,0,0,1,.908-1.593h0a1.307,1.307,0,0,1,1.6.908h0a1.3,1.3,0,0,1-.915,1.593h0a1.431,1.431,0,0,1-.34.051h0A1.306,1.306,0,0,1,135.054,52.207ZM4.428,49.331a1.3,1.3,0,0,1-.822-1.643h.008a1.3,1.3,0,0,1,1.643-.814h0a1.3,1.3,0,0,1,.815,1.643h0a1.314,1.314,0,0,1-1.234.887h0A1.17,1.17,0,0,1,4.428,49.331Zm129.458-.944h0a1.3,1.3,0,0,1,.815-1.644h0a1.29,1.29,0,0,1,1.644.815h0a1.294,1.294,0,0,1-.807,1.643h0a1.449,1.449,0,0,1-.418.072h0A1.312,1.312,0,0,1,133.886,48.387ZM5.769,45.482A1.3,1.3,0,0,1,5.048,43.8h0a1.3,1.3,0,0,1,1.7-.721h0a1.3,1.3,0,0,1,.714,1.694h0a1.3,1.3,0,0,1-1.2.807h0A1.289,1.289,0,0,1,5.769,45.482Zm126.725-.837a1.307,1.307,0,0,1,.714-1.694h0a1.308,1.308,0,0,1,1.7.714h0a1.3,1.3,0,0,1-.714,1.694h0a1.286,1.286,0,0,1-.49.094h0A1.3,1.3,0,0,1,132.494,44.646ZM7.341,41.72a1.3,1.3,0,0,1-.62-1.731h0a1.3,1.3,0,0,1,1.731-.612h0a1.293,1.293,0,0,1,.613,1.73h0a1.3,1.3,0,0,1-1.168.735h0A1.256,1.256,0,0,1,7.341,41.72ZM130.886,41a1.3,1.3,0,0,1,.613-1.731h0a1.3,1.3,0,0,1,1.731.613h0a1.3,1.3,0,0,1-.613,1.73h0a1.267,1.267,0,0,1-.556.123h0A1.3,1.3,0,0,1,130.886,41ZM9.129,38.058a1.3,1.3,0,0,1-.512-1.766h0a1.3,1.3,0,0,1,1.76-.512h0a1.3,1.3,0,0,1,.512,1.766h0a1.3,1.3,0,0,1-1.139.67h0A1.283,1.283,0,0,1,9.129,38.058Zm119.933-.606a1.3,1.3,0,0,1,.5-1.766h0a1.3,1.3,0,0,1,1.767.512h0a1.294,1.294,0,0,1-.512,1.759h0a1.223,1.223,0,0,1-.627.166h0A1.3,1.3,0,0,1,129.062,37.453ZM11.134,34.5a1.289,1.289,0,0,1-.4-1.787h0a1.294,1.294,0,0,1,1.788-.4h0a1.3,1.3,0,0,1,.4,1.787h0a1.3,1.3,0,0,1-1.1.606h0A1.289,1.289,0,0,1,11.134,34.5Zm115.9-.49a1.3,1.3,0,0,1,.4-1.787h0a1.3,1.3,0,0,1,1.788.4h0a1.3,1.3,0,0,1-.4,1.787h0a1.285,1.285,0,0,1-.692.2h0A1.276,1.276,0,0,1,127.029,34.014ZM13.34,31.081a1.3,1.3,0,0,1-.295-1.809h0a1.3,1.3,0,0,1,1.809-.3h0a1.293,1.293,0,0,1,.3,1.809h0a1.29,1.29,0,0,1-1.052.541h0A1.3,1.3,0,0,1,13.34,31.081Zm111.454-.367a1.308,1.308,0,0,1,.3-1.816h0a1.3,1.3,0,0,1,1.81.3h0A1.292,1.292,0,0,1,126.6,31h0a1.278,1.278,0,0,1-.757.245h0A1.3,1.3,0,0,1,124.793,30.713ZM15.749,27.8a1.294,1.294,0,0,1-.188-1.824h0a1.29,1.29,0,0,1,1.824-.195h0a1.3,1.3,0,0,1,.195,1.824h0a1.3,1.3,0,0,1-1.01.483h0A1.311,1.311,0,0,1,15.749,27.8Zm106.622-.267a1.294,1.294,0,0,1,.188-1.824h0a1.3,1.3,0,0,1,1.824.188h0a1.3,1.3,0,0,1-.187,1.831h0a1.3,1.3,0,0,1-.822.288h0A1.28,1.28,0,0,1,122.37,27.535ZM18.352,24.658a1.291,1.291,0,0,1-.087-1.831h0a1.3,1.3,0,0,1,1.831-.086h0a1.3,1.3,0,0,1,.087,1.838h0a1.279,1.279,0,0,1-.959.418h0A1.266,1.266,0,0,1,18.352,24.658Zm101.409-.144a1.3,1.3,0,0,1,.079-1.831h0a1.286,1.286,0,0,1,1.832.079h.007a1.292,1.292,0,0,1-.086,1.831h0a1.271,1.271,0,0,1-.872.339h0A1.29,1.29,0,0,1,119.761,24.514ZM21.128,21.682a1.3,1.3,0,0,1,.021-1.831h0a1.3,1.3,0,0,1,1.839.022h0a1.306,1.306,0,0,1-.022,1.838h0a1.309,1.309,0,0,1-.908.368h0A1.3,1.3,0,0,1,21.128,21.682Zm95.849-.036a1.3,1.3,0,0,1-.029-1.838h0a1.306,1.306,0,0,1,1.838-.021h0a1.289,1.289,0,0,1,.022,1.831h0a1.272,1.272,0,0,1-.93.4h0A1.289,1.289,0,0,1,116.977,21.646Zm-92.9-2.768a1.3,1.3,0,0,1,.13-1.83h0a1.3,1.3,0,0,1,1.831.129h0a1.3,1.3,0,0,1-.13,1.831h0a1.311,1.311,0,0,1-.851.317h0A1.3,1.3,0,0,1,24.077,18.877Zm89.951.073a1.3,1.3,0,0,1-.137-1.831h0a1.3,1.3,0,0,1,1.831-.137h0a1.3,1.3,0,0,1,.138,1.831h0a1.313,1.313,0,0,1-.981.454h0A1.314,1.314,0,0,1,114.028,18.95Zm-86.844-2.7a1.3,1.3,0,0,1,.238-1.824h0a1.313,1.313,0,0,1,1.825.238h0A1.306,1.306,0,0,1,29,16.485h0a1.278,1.278,0,0,1-.786.267h0A1.3,1.3,0,0,1,27.184,16.247Zm83.743.18a1.3,1.3,0,0,1-.246-1.816h0a1.307,1.307,0,0,1,1.825-.245h0a1.311,1.311,0,0,1,.238,1.823h0a1.292,1.292,0,0,1-1.031.505h0A1.278,1.278,0,0,1,110.928,16.427ZM30.436,13.8A1.3,1.3,0,0,1,30.79,12h0a1.3,1.3,0,0,1,1.8.346h0a1.3,1.3,0,0,1-.353,1.8h0a1.282,1.282,0,0,1-.721.223h0A1.314,1.314,0,0,1,30.436,13.8Zm77.247.3a1.3,1.3,0,0,1-.353-1.8h0a1.3,1.3,0,0,1,1.8-.353h0a1.3,1.3,0,0,1,.345,1.8h0a1.271,1.271,0,0,1-1.074.569h0A1.333,1.333,0,0,1,107.683,14.1Zm-73.85-2.544a1.291,1.291,0,0,1,.454-1.773h0a1.3,1.3,0,0,1,1.781.454h0a1.3,1.3,0,0,1-.454,1.773h0a1.316,1.316,0,0,1-.663.18h0A1.3,1.3,0,0,1,33.833,11.554Zm70.468.4a1.3,1.3,0,0,1-.454-1.781h0a1.3,1.3,0,0,1,1.774-.454h0a1.3,1.3,0,0,1,.461,1.78h0a1.3,1.3,0,0,1-1.124.635h0A1.29,1.29,0,0,1,104.3,11.958ZM37.351,9.522a1.3,1.3,0,0,1,.562-1.751h0a1.291,1.291,0,0,1,1.745.555h0a1.3,1.3,0,0,1-.555,1.751h0a1.255,1.255,0,0,1-.592.144h0A1.309,1.309,0,0,1,37.351,9.522Zm63.453.5a1.3,1.3,0,0,1-.563-1.751h0a1.292,1.292,0,0,1,1.745-.555h0a1.289,1.289,0,0,1,.563,1.745h0a1.3,1.3,0,0,1-1.154.706h0A1.319,1.319,0,0,1,100.8,10.026ZM40.986,7.691a1.294,1.294,0,0,1,.663-1.708h0a1.287,1.287,0,0,1,1.709.656h0A1.3,1.3,0,0,1,42.7,8.354h0a1.377,1.377,0,0,1-.527.108h0A1.3,1.3,0,0,1,40.986,7.691ZM97.191,8.3a1.3,1.3,0,0,1-.663-1.715h0a1.3,1.3,0,0,1,1.709-.663h0A1.3,1.3,0,0,1,98.9,7.64h0a1.3,1.3,0,0,1-1.189.771h0A1.334,1.334,0,0,1,97.191,8.3Zm-52.47-2.22a1.3,1.3,0,0,1,.764-1.672h0a1.3,1.3,0,0,1,1.666.764h0a1.3,1.3,0,0,1-.757,1.672h0a1.428,1.428,0,0,1-.455.08h0A1.3,1.3,0,0,1,44.721,6.083ZM93.485,6.8a1.287,1.287,0,0,1-.764-1.665h0a1.287,1.287,0,0,1,1.666-.764h0a1.291,1.291,0,0,1,.764,1.665h0a1.3,1.3,0,0,1-1.218.843h0A1.216,1.216,0,0,1,93.485,6.8ZM48.549,4.7a1.3,1.3,0,0,1,.865-1.622h0a1.3,1.3,0,0,1,1.623.857h0a1.3,1.3,0,0,1-.865,1.622h0a1.147,1.147,0,0,1-.382.058h0A1.293,1.293,0,0,1,48.549,4.7Zm41.144.815h0A1.294,1.294,0,0,1,88.827,3.9h0a1.3,1.3,0,0,1,1.622-.865h0a1.293,1.293,0,0,1,.859,1.622h0a1.3,1.3,0,0,1-1.241.915h0A1.129,1.129,0,0,1,89.693,5.514ZM52.457,3.546a1.305,1.305,0,0,1,.959-1.571h0a1.307,1.307,0,0,1,1.565.958h0A1.3,1.3,0,0,1,54.029,4.5h0a1.19,1.19,0,0,1-.311.043h0A1.306,1.306,0,0,1,52.457,3.546Zm33.377.923A1.3,1.3,0,0,1,84.875,2.9h0a1.3,1.3,0,0,1,1.573-.958h0A1.29,1.29,0,0,1,87.4,3.51h0a1.292,1.292,0,0,1-1.254.995h0A1.537,1.537,0,0,1,85.835,4.469ZM56.423,2.631a1.3,1.3,0,0,1,1.046-1.507h0A1.3,1.3,0,0,1,58.983,2.17h0a1.308,1.308,0,0,1-1.046,1.506h0A1.305,1.305,0,0,1,57.7,3.7h0A1.3,1.3,0,0,1,56.423,2.631Zm25.5,1.016a1.3,1.3,0,0,1-1.053-1.506h0A1.3,1.3,0,0,1,82.381,1.1h0A1.3,1.3,0,0,1,83.433,2.6h0a1.3,1.3,0,0,1-1.276,1.067h0A1.23,1.23,0,0,1,81.926,3.647Zm-21.487-1.7A1.3,1.3,0,0,1,61.579.5h0a1.3,1.3,0,0,1,1.442,1.132h0a1.3,1.3,0,0,1-1.14,1.442h0a1.088,1.088,0,0,1-.151.014h0A1.3,1.3,0,0,1,60.439,1.946ZM77.975,3.063a1.3,1.3,0,0,1-1.139-1.441h0A1.292,1.292,0,0,1,78.278.49h0a1.3,1.3,0,0,1,1.139,1.434h0a1.3,1.3,0,0,1-1.29,1.146h0A1.018,1.018,0,0,1,77.975,3.063ZM64.492,1.507A1.293,1.293,0,0,1,65.7.13h0A1.3,1.3,0,0,1,67.08,1.348h0a1.3,1.3,0,0,1-1.218,1.377h-.08A1.3,1.3,0,0,1,64.492,1.507Zm9.5,1.2h0a1.293,1.293,0,0,1-1.218-1.37h0A1.3,1.3,0,0,1,74.146.122h0a1.3,1.3,0,0,1,1.219,1.37h0a1.3,1.3,0,0,1-1.29,1.225h0A.3.3,0,0,1,73.995,2.71ZM69.914,2.6h-.057a1.291,1.291,0,0,1-1.3-1.29h0a1.291,1.291,0,0,1,1.29-1.3h.065C69.943.008,69.971,0,70,0h0V.008h0A1.291,1.291,0,0,1,71.3,1.3h0A1.293,1.293,0,0,1,70,2.6V2.6C69.971,2.6,69.943,2.6,69.914,2.6Z' transform='translate(0)' fill='url(%23linear-gradient)'/%3E%3Cpath id='Path_5998' data-name='Path 5998' d='M77.726,141.665a63.9,63.9,0,1,1,63.929-63.9A63.989,63.989,0,0,1,77.726,141.665Zm0-124.561a60.657,60.657,0,1,0,60.681,60.658A60.738,60.738,0,0,0,77.726,17.1Z' transform='translate(-7.724 -7.758)' fill='url(%23linear-gradient-2)'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A");
  background-position: center center;
  background-size: contain;
  z-index: 3;
}
.mainvisual .mainvisual-tip p {
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 100%;
}
.mainvisual .mainvisual-tip small {
  position: relative;
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.5;
  color: #fff4dd;
  text-align: center;
}
.mainvisual .mainvisual-tip strong {
  position: relative;
  display: block;
  font-size: 4.8rem;
  font-weight: 600;
  line-height: 4.8rem;
  color: #fff4dd;
  text-align: center;
}
.top-action-section {
  position: relative;
  padding: 1.2rem 0 1.2rem;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#f5d0a7),
    to(#b2834b)
  );
  background: linear-gradient(to bottom, #f5d0a7, #b2834b);
  z-index: 3;
}
.top-action-section .container {
  position: relative;
  z-index: 1;
}
.top-action-section .action-group {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0rem, 1fr) 1rem minmax(0rem, 1fr) 1rem
    minmax(0rem, 1fr);
  grid-template-columns: repeat(3, minmax(0rem, 1fr));
  gap: 1rem;
}
.top-action-section .action-group > li {
  position: relative;
  display: block;
}
.top-action-section .action-group .action-btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0.5rem 0.5rem;
  width: 100%;
  max-width: 100%;
  height: 9.6rem;
  background: transparent;
  font-size: 2rem;
  line-height: 3.2rem;
  letter-spacing: 0;
  font-weight: 600;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  border: 2px solid #ffffff;
  border-radius: 0.4rem;
  overflow: hidden;
  margin: 0;
  z-index: 0;
}
.top-action-section .action-group .action-btn span {
  position: relative;
  color: inherit;
  text-decoration: none;
  z-index: 3;
}
.top-action-section .action-group .action-btn:focus,
.top-action-section .action-group .action-btn:hover {
  background: #ffffff;
  color: #b2834b;
}
.top-intro-section {
  position: relative;
  padding: 5rem 0 6rem;
  z-index: 3;
}
.top-intro-section .container {
  position: relative;
  z-index: 1;
}
.top-intro-section .section-label {
  position: relative;
  margin-bottom: 5rem;
}
.top-intro-section .section-next {
  position: relative;
  margin-bottom: 4.5rem;
}
.top-intro-section .section-next .icon {
  position: relative;
  width: 23rem;
  max-width: 100%;
  margin: 0 auto;
  animation-name: btnAnime02;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-timing-function: ease;
}
@keyframes btnAnime02 {
  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(0, -8px);
  }
  100% {
    transform: translate(0, 0);
  }
}

.top-intro-section .intro-action {
  position: relative;
  margin-top: 5rem;
  animation: anime_cvbtn01 0.5s ease 0s infinite alternate;
}

@keyframes anime_cvbtn01 {
  from {
    transform: scale(0.9, 0.9);
  }
  to {
    transform: scale(1, 1);
  }
}

.top-intro-section .section-banner {
  position: relative;
}
.top-intro-section .section-banner .banner-card {
  position: relative;
  display: block;
  width: 48rem;
  max-width: 100%;
  padding: 3rem 4rem 2rem 3rem;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#ffffff),
    color-stop(70%, #ffffff),
    color-stop(73%, #f6f5ef),
    to(#937c2b)
  );
  background: linear-gradient(
    to bottom,
    #ffffff 0%,
    #ffffff 70%,
    #f6f5ef 73%,
    #937c2b 100%
  );
  border-radius: 1.6rem;
  -webkit-box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  margin: 0 auto;
}
.top-intro-section .section-banner .banner-card .label {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  padding: 0.3rem 3rem 0.4rem;
  background: #55b7c5;
  border-radius: 3.8rem;
  font-size: 2.4rem;
  line-height: 3rem;
  font-weight: 600;
  color: #ffffff;
  text-align: center;
  margin: 0 auto 1.6rem;
  z-index: 1;
}
.top-intro-section .section-banner .banner-card .price {
  position: relative;
  font-size: 2.8rem;
  line-height: 4.5rem;
  font-weight: 600;
  color: #3c1f0a;
  text-align: center;
  z-index: 1;
}
.top-intro-section .section-banner .banner-card .price strong {
  font-size: 3.6rem;
  font-weight: 600;
  color: #54b7c6;
}
.top-intro-section .section-banner .banner-card .help {
  position: relative;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 3rem;
  text-align: center;
  margin-top: 2.8rem;
  z-index: 1;
}
.top-intro-section .section-banner .banner-card .image {
  position: absolute;
  top: -1.8rem;
  right: -6rem;
  display: block;
  width: 16rem;
  height: auto;
  margin: 0;
  z-index: 0;
}
.top-intro-section .section-tip {
  position: relative;
  margin-top: 7rem;
}
.top-intro-section .section-tip h3 {
  position: relative;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 3.6rem;
  text-align: center;
  color: #ff7400;
  text-align: center;
  z-index: 1;
}
.top-intro-section .section-tip h3 span {
  position: relative;
  display: block;
  padding: 0.2rem 0.6rem;
  background: #fbffcb;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto;
}
.top-intro-section .section-tip h3 span + span {
  margin-top: 1.6rem;
}
.top-intro-section .section-onda {
  position: relative;
  padding: 0 2rem;
  margin-top: 6rem;
}
.top-intro-section .section-onda .onda-title {
  position: relative;
  margin-bottom: 3rem;
}
.top-intro-section .section-onda .onda-title p {
  position: relative;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 3rem;
  color: #3c1f0a;
  text-align: center;
  margin-bottom: 0.2rem;
}
.top-intro-section .section-onda .onda-title h3 {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 4.5rem;
  color: #3c1f0a;
  text-align: center;
}
.top-intro-section .section-onda .onda-content {
  position: relative;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 4rem;
  color: #3c1f0a;
  text-align: center;
}
.top-worries-section {
  position: relative;
  padding: 5rem 0 6rem;
  background: linear-gradient(-135deg, #55b7c5 0%, #56b8c6 48%, #ccf9ff 100%);
}
.top-worries-section .container {
  position: relative;
  z-index: 1;
}
.top-worries-section .section-title {
  position: relative;
  margin-bottom: 4.5rem;
}
.top-worries-section .section-title h2 {
  color: #ffffff;
}
.top-worries-section .section-content {
  position: relative;
  padding: 0 3rem;
}
.top-worries-section .section-content .worries-list {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: minmax(0rem, 1fr) 2rem minmax(0rem, 1fr);
  grid-template-columns: repeat(2, minmax(0rem, 1fr));
  gap: 2.4rem 2rem;
}
.top-worries-section .section-content .worries-list > li {
  position: relative;
  display: block;
}
.top-worries-section .section-content .worries-list .item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 14rem;
  background: #ffffff;
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 4rem;
  color: #3c1f0a;
  text-align: center;
  border-radius: 1.6rem;
  -webkit-box-shadow: 0 0.4rem 1.6rem 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.4rem 1.6rem 0 rgba(0, 0, 0, 0.1);
  z-index: 0;
}
.top-worries-section .section-content .worries-list .item p {
  position: relative;
  color: inherit;
}
.top-worries-section .section-content .worries-list .item span {
  color: #ff0000;
}
.top-case-section {
  position: relative;
  padding: 6rem 0 2rem;
  overflow: hidden;
  z-index: 1;
}
.top-case-section .container {
  position: relative;
  z-index: 1;
}
.top-case-section .section-title {
  position: relative;
}
.top-case-section .section-content {
  position: relative;
  padding: 0 2rem;
}
.top-case-section .section-content .case-swiper-slider {
  position: relative;
}
.top-case-section .section-content .case-swiper-slider .swiper-slide {
  position: relative;
}
.top-case-section .section-content .case-swiper-slider .case-item {
  position: relative;
  display: block;
}
.top-case-section .section-content .case-swiper-slider .case-item .thumb {
  position: relative;
  width: 100%;
}
.top-case-section .section-content .case-swiper-slider .case-item .content {
  position: relative;
  margin-top: 3rem;
  font-size: 1.8rem;
  line-height: 3.6rem;
  font-weight: 400;
  color: #3c1f0a;
  text-align: left;
}
.top-case-section .section-content .case-action {
  position: relative;
  margin-top: 5rem;
}
.top-case-section .section-content .case-action .case-btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 3rem;
  padding: 0.5rem 0.5rem;
  width: 48.2rem;
  max-width: 100%;
  height: 8.8rem;
  background: #c6b13f;
  font-family: "Noto Serif JP", serif;
  font-size: 2.8rem;
  font-weight: 600;
  line-height: 3.6rem;
  color: #ffffff;
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
  border-radius: 8rem;
  overflow: hidden;
  -webkit-box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  z-index: 0;
  margin: 0 auto;
}
.top-case-section .section-content .case-action .case-btn span {
  position: relative;
  color: inherit;
  text-decoration: none;
  z-index: 3;
}
.top-case-section .section-content .case-action .case-btn img {
  position: relative;
  display: block;
  width: 4.8rem;
  height: auto;
  z-index: 3;
}
.top-feature-section {
  position: relative;
  padding: 6rem 0 2rem;
}
.top-feature-section .container {
  position: relative;
  z-index: 1;
}
.top-feature-section .section-wrapper {
  position: relative;
}
.top-feature-section .section-title {
  position: relative;
}
.top-feature-section .section-content {
  position: relative;
  padding: 0 2rem;
}
.top-feature-section .section-content .feature-list {
  position: relative;
  display: block;
}
.top-feature-section .section-content .feature-list > li {
  position: relative;
  display: block;
}
.top-feature-section .section-content .feature-list > li:not(:last-child) {
  margin-bottom: 4.5rem;
}
.top-feature-section .section-content .feature-list .item {
  position: relative;
}
.top-feature-section .section-content .feature-list .item .title {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 3.8rem;
  color: #ffffff;
  text-align: left;
  margin-left: -4rem;
  margin-right: -4rem;
  margin-bottom: 3.6rem;
}
.top-feature-section .section-content .feature-list .item .title span {
  position: relative;
  display: block;
  padding: 0.6rem 3rem 0.6rem 4rem;
  background: #d6ac7d;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
}
.top-feature-section .section-content .feature-list .item .content {
  position: relative;
  font-size: 2.4rem;
  line-height: 4rem;
  font-weight: 400;
  color: #3c1f0a;
  text-align: left;
}
.top-feature-section .section-content .feature-list .item .content p {
  position: relative;
  z-index: 1;
}
.top-feature-section .section-content .feature-list .item .content img {
  display: block;
}
.top-feature-section .section-content .feature-list .item .content .txt02 {
  width: 28rem;
  max-width: 100%;
}
.top-feature-section .section-content .feature-list .item .content .img01 {
  position: absolute;
  top: -1.6rem;
  right: 0;
  width: 18.6rem;
  z-index: 0;
}
.top-feature-section .section-content .feature-list .item .content .img02 {
  position: absolute;
  top: -8.3rem;
  right: 0;
  width: 23rem;
  z-index: 0;
}
.top-feature-section .section-content .feature-action {
  position: relative;
  margin-top: 5rem;
  animation: anime_cvbtn01 0.5s ease 0s infinite alternate;
}

@keyframes anime_cvbtn01 {
  from {
    transform: scale(0.9, 0.9);
  }
  to {
    transform: scale(1, 1);
  }
}

.top-feature-section .section-content .feature-action .feature-btn {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0.5rem 0.5rem;
  width: 48.2rem;
  max-width: 100%;
  height: 8.8rem;
  background: #53b7c6;
  font-family: "Noto Serif JP", serif;
  font-size: 2.8rem;
  font-weight: 600;
  line-height: 3.6rem;
  color: #ffffff;
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
  border-radius: 8rem;
  border: 1px solid #000000;
  overflow: hidden;
  -webkit-box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  z-index: 0;
  margin: 0 auto;
}
.top-feature-section .section-content .feature-action .feature-btn span {
  position: relative;
  display: inline-block;
  padding-bottom: 0.6rem;
  color: inherit;
  text-decoration: none;
  z-index: 3;
}
.top-feature-section .section-content .feature-action .feature-btn span:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  height: 1px;
  background: #ffffff;
  z-index: 1;
}
.top-comparison-section {
  position: relative;
  padding: 6rem 0 2rem;
  z-index: 0;
}
.top-comparison-section .container {
  position: relative;
  z-index: 1;
}
.top-comparison-section .section-title {
  position: relative;
}
.top-comparison-section .section-content {
  position: relative;
  padding: 0 2rem;
}
.top-comparison-section .section-content .comparison-table {
  position: relative;
  width: 100%;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#ffffff),
    to(#bfddff)
  );
  background: linear-gradient(to bottom, #ffffff, #bfddff);
  width: 100%;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 2.4rem;
  color: #3c1f0a;
  text-align: center;
  vertical-align: middle;
  border-collapse: collapse;
  border: none;
  z-index: 0;
}
.top-comparison-section .section-content .comparison-table td,
.top-comparison-section .section-content .comparison-table th {
  position: relative;
  padding: 1.2rem 0.6rem;
  vertical-align: middle;
  border: 2px solid #58b7c6;
}
.top-comparison-section .section-content .comparison-table td img,
.top-comparison-section .section-content .comparison-table th img {
  display: block;
  width: 100%;
  height: auto;
  z-index: 0;
}
.top-comparison-section .section-content .comparison-table th {
  font-size: 1.6rem;
}
.top-comparison-section .section-content .comparison-table .active {
  border-left: 3px solid #ff0000;
  border-right: 3px solid #ff0000;
  z-index: 3;
}
.top-comparison-section .section-content .comparison-table > thead {
  position: relative;
}
.top-comparison-section .section-content .comparison-table > thead td {
  padding: 0.6rem 0.6rem;
}
.top-comparison-section .section-content .comparison-table > thead .no-border {
  border-top-color: #ffffff;
  border-left-color: transparent;
}
.top-comparison-section
  .section-content
  .comparison-table
  > thead
  tr:first-child
  .active {
  border-top: 2px solid #ff0000;
}
.top-comparison-section
  .section-content
  .comparison-table
  > thead
  tr:first-child
  .active:before {
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
  right: -3px;
  height: 3px;
  background: #ff0000;
  z-index: 0;
}
.top-comparison-section .section-content .comparison-table > tbody {
  position: relative;
}
.top-comparison-section
  .section-content
  .comparison-table
  > tbody
  tr:last-child
  .active {
  border-bottom: 2px solid #ff0000;
}
.top-comparison-section
  .section-content
  .comparison-table
  > tbody
  tr:last-child
  .active:before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: -3px;
  right: -3px;
  height: 3px;
  background: #ff0000;
  z-index: 0;
}
.top-price-section {
  position: relative;
  padding: 6rem 0 2rem;
  z-index: 0;
}
.top-price-section .container {
  position: relative;
  z-index: 1;
}
.top-price-section .section-title {
  position: relative;
}
.top-price-section .section-content {
  position: relative;
  padding: 0 2rem;
}
.top-price-section .section-content .price-table {
  position: relative;
  width: 100%;
  background: #ffffff;
  width: 100%;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 3.6rem;
  color: #3c1f0a;
  text-align: center;
  vertical-align: middle;
  border-collapse: collapse;
  border: 2px solid #53b7c6;
  z-index: 0;
}
.top-price-section .section-content .price-table td,
.top-price-section .section-content .price-table th {
  position: relative;
  padding: 1.2rem 0.6rem;
  vertical-align: middle;
  border: 2px solid #58b7c6;
}
.top-price-section .section-content .price-table th {
  background: #53b7c6;
  color: #ffffff;
  font-weight: 600;
}
.top-price-section .section-content .price-table th:not(:last-child) {
  border-right-color: #ffffff;
}
.top-price-section .section-content .price-table td {
  padding: 1.4rem 0.6rem;
}
.top-price-section .section-content .price-help {
  position: relative;
  margin-top: 3rem;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 3.2rem;
  color: #3c1f0a;
  text-align: left;
}
.top-price-section .section-banner {
  position: relative;
  margin-top: 6rem;
}
.top-price-section .section-banner .banner-card {
  position: relative;
  display: block;
  width: 48rem;
  max-width: 100%;
  padding: 3rem 4rem 2rem 3rem;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(#ffffff),
    color-stop(70%, #ffffff),
    color-stop(73%, #f6f5ef),
    to(#937c2b)
  );
  background: linear-gradient(
    to bottom,
    #ffffff 0%,
    #ffffff 70%,
    #f6f5ef 73%,
    #937c2b 100%
  );
  border-radius: 1.6rem;
  -webkit-box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  margin: 0 auto;
}
.top-price-section .section-banner .banner-card .label {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  padding: 0.3rem 3rem 0.4rem;
  background: #55b7c5;
  border-radius: 3.8rem;
  font-size: 2.4rem;
  line-height: 3rem;
  font-weight: 600;
  color: #ffffff;
  text-align: center;
  margin: 0 auto 1.6rem;
  z-index: 1;
}
.top-price-section .section-banner .banner-card .price {
  position: relative;
  font-size: 2.8rem;
  line-height: 4.5rem;
  font-weight: 600;
  color: #3c1f0a;
  text-align: center;
  z-index: 1;
}
.top-price-section .section-banner .banner-card .price strong {
  font-size: 3.6rem;
  font-weight: 600;
  color: #54b7c6;
}
.top-price-section .section-banner .banner-card .help {
  position: relative;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 3rem;
  text-align: center;
  margin-top: 2.8rem;
  z-index: 1;
}
.top-price-section .section-banner .banner-card .image {
  position: absolute;
  top: -1.8rem;
  right: -6rem;
  display: block;
  width: 16rem;
  height: auto;
  margin: 0;
  z-index: 0;
}
.top-reason-section {
  position: relative;
  padding: 6rem 0 2rem;
  z-index: 0;
}
.top-reason-section .container {
  position: relative;
  z-index: 1;
}
.top-reason-section .section-title {
  position: relative;
}
.top-reason-section .section-content {
  position: relative;
  padding: 0 2rem;
}
.top-reason-section .section-content .reason-list {
  position: relative;
  display: block;
}
.top-reason-section .section-content .reason-list > li {
  position: relative;
  display: block;
}
.top-reason-section .section-content .reason-list > li:not(:last-child) {
  margin-bottom: 3rem;
}
.top-reason-section .section-content .reason-list > li .item {
  position: relative;
  display: block;
  width: 48rem;
  max-width: 100%;
  background: #5984a0;
  padding: 2.4rem 3.6rem 2.4rem;
  border-radius: 1.6rem;
  -webkit-box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16);
  margin: 0 auto;
  z-index: 0;
}
.top-reason-section .section-content .reason-list > li .item .title {
  position: relative;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 3.6rem;
  color: #ffffff;
  text-align: center;
  margin-bottom: 1.2rem;
}
.top-reason-section .section-content .reason-list > li .item .content {
  position: relative;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 3.2rem;
  color: #ffffff;
  text-align: center;
}
.top-reason-section .section-content .reason-list > li .item .content h4 {
  position: relative;
  font-size: 2rem;
  font-weight: 600;
  line-height: 4rem;
  color: #ffea6c;
  text-align: center;
  margin-bottom: 0.6rem;
}
.top-reason-section
  .section-content
  .reason-list
  > li
  .item
  .content
  h4
  strong {
  font-size: 4rem;
  font-weight: 600;
}
.top-reason-section .section-content .reason-list > li .item .content p {
  position: relative;
}
.top-reason-section .section-content .reason-action {
  position: relative;
  margin-top: 6rem;
  animation: anime_cvbtn01 0.5s ease 0s infinite alternate;
}

@keyframes anime_cvbtn01 {
  from {
    transform: scale(0.9, 0.9);
  }
  to {
    transform: scale(1, 1);
  }
}

.top-doctor-section {
  position: relative;
  padding: 6rem 0 2rem;
  z-index: 0;
}
.top-doctor-section .container {
  position: relative;
  z-index: 1;
}
.top-doctor-section .section-title {
  position: relative;
}
.top-doctor-section .section-content {
  position: relative;
  padding: 0 2rem;
}
.top-doctor-section .section-content .doctor-card {
  position: relative;
  display: block;
  padding: 3rem 4rem 4rem;
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(rgba(209, 187, 67, 0.6)),
    to(rgba(255, 255, 255, 0.6))
  );
  background: linear-gradient(
    to bottom,
    rgba(209, 187, 67, 0.6),
    rgba(255, 255, 255, 0.6)
  );
  border: none;
  z-index: 0;
}
.top-doctor-section .section-content .doctor-card .label {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 4rem;
  color: #3c1f0a;
  text-align: center;
  margin-bottom: 1rem;
  z-index: 1;
}
.top-doctor-section .section-content .doctor-card .name {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 4rem;
  color: #3c1f0a;
  text-align: center;
  margin-bottom: 2rem;
}
.top-doctor-section .section-content .doctor-card .name strong {
  display: block;
  font-weight: 500;
}
.top-doctor-section .section-content .doctor-card .name span {
  display: block;
  font-size: 2rem;
  font-weight: 500;
  color: #90420a;
  margin-top: 0.6rem;
}
.top-doctor-section .section-content .doctor-card .thumb {
  position: relative;
  width: 100%;
}
.top-doctor-section .section-content .doctor-meta {
  position: relative;
  display: block;
  margin-top: 5rem;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 4rem;
  color: #3c1f0a;
  text-align: left;
}
.top-doctor-section .section-content .doctor-meta > li {
  position: relative;
  display: block;
}
.top-doctor-section .section-content .doctor-meta > li:not(:last-child) {
  margin-bottom: 4rem;
}
.top-doctor-section .section-content .doctor-meta > li h4 {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 4rem;
  color: #3c1f0a;
  text-align: left;
  margin-bottom: 2rem;
}
.top-doctor-section .section-content .doctor-meta > li h4 span {
  position: relative;
  display: inline-block;
  padding-right: 3rem;
  background: #efe8e3;
  z-index: 1;
}
.top-doctor-section .section-content .doctor-meta > li h4:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: calc(100% - 0.5rem);
  height: 1px;
  background: #707070;
  z-index: 0;
}
.top-doctor-section .section-content .doctor-meta > li p {
  position: relative;
}
.top-clinic-section {
  position: relative;
  padding: 6rem 0 2rem;
  z-index: 0;
}
.top-clinic-section .container {
  position: relative;
  z-index: 1;
}
.top-clinic-section .section-title {
  position: relative;
}
.top-clinic-section .section-content {
  position: relative;
  padding: 0 2rem;
}
.top-clinic-section .section-content .clinic-card {
  position: relative;
  display: block;
  z-index: 0;
}
.top-clinic-section .section-content .clinic-card .thumb {
  position: relative;
  width: 100%;
  border-radius: 4rem 4rem 0 0;
}
.top-clinic-section .section-content .clinic-card .content {
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 4rem;
  color: #3c1f0a;
  text-align: left;
  margin-top: 4rem;
  z-index: 1;
}
.top-clinic-section .section-content .clinic-map {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 36rem;
  overflow: hidden;
  margin-top: 6rem;
  z-index: 0;
}
.top-clinic-section .section-content .clinic-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  border: none;
}
.top-faq-section {
  position: relative;
  padding: 6rem 0 7rem;
  z-index: 0;
}
.top-faq-section .container {
  position: relative;
  z-index: 1;
}
.top-faq-section .section-title {
  position: relative;
}
.top-faq-section .section-content {
  position: relative;
  padding: 0 2rem;
}
.top-faq-section .section-content .faq-list {
  position: relative;
  display: block;
}
.top-faq-section .section-content .faq-list > li {
  position: relative;
  display: block;
}
.top-faq-section .section-content .faq-list > li:not(:last-child) {
  margin-bottom: 3rem;
}
.top-faq-section .section-content .faq-list > li .item {
  position: relative;
  display: block;
  padding: 2.8rem 3rem;
  background: #ffffff;
  border-radius: 1.6rem;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 4rem;
  text-align: left;
  color: #3c1f0a;
}
.top-faq-section .section-content .faq-list > li .item h4 {
  position: relative;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 4rem;
  text-align: left;
  color: #3c1f0a;
  margin-bottom: 1.6rem;
}
.top-faq-section .section-content .faq-list > li .item p {
  position: relative;
}
.top-faq-section .section-content .faq-action {
  position: relative;
  margin-top: 6rem;
  animation: anime_cvbtn01 0.5s ease 0s infinite alternate;
}

@keyframes anime_cvbtn01 {
  from {
    transform: scale(0.9, 0.9);
  }
  to {
    transform: scale(1, 1);
  }
}

.top-contact-section {
  position: relative;
  padding: 8rem 0 9rem;
  background: #ebf3f9;
}
@media only screen and (max-width: 768px) {
  .top-contact-section {
    padding: 6rem 0 7rem;
  }
}
.top-contact-section .container {
  position: relative;
  z-index: 1;
}
.top-contact-section .section-title {
  position: relative;
  margin-bottom: 6rem;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .section-title {
    margin-bottom: 4rem;
  }
}
.top-contact-section .section-title h2 {
  position: relative;
  text-align: center;
}
.top-contact-section .section-title p {
  position: relative;
  letter-spacing: 0.05em;
  text-align: center;
  margin-top: 3rem;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .section-title p {
    margin-top: 2.4rem;
  }
}
.top-contact-section .section-content {
  position: relative;
  width: 100%;
  max-width: 100rem;
  margin-left: auto;
  margin-right: auto;
}
.top-contact-section .contact-form {
  position: relative;
  display: block;
  width: 100%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.875;
  letter-spacing: 0.05em;
  color: #333333;
  text-align: left;
  word-break: break-all;
}
.top-contact-section .contact-form input[type="email"],
.top-contact-section .contact-form input[type="number"],
.top-contact-section .contact-form input[type="password"],
.top-contact-section .contact-form input[type="tel"],
.top-contact-section .contact-form input[type="text"],
.top-contact-section .contact-form select,
.top-contact-section .contact-form textarea {
  position: relative;
  background: #ffffff;
  border: 1px solid #ffffff;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1.5rem 2rem;
  width: 100%;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 2.4rem;
  text-align: left;
  color: #262626;
  outline: none;
  border-radius: 0.6rem;
  vertical-align: middle;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .contact-form input[type="email"],
  .top-contact-section .contact-form input[type="number"],
  .top-contact-section .contact-form input[type="password"],
  .top-contact-section .contact-form input[type="tel"],
  .top-contact-section .contact-form input[type="text"],
  .top-contact-section .contact-form select,
  .top-contact-section .contact-form textarea {
    padding: 1.5rem 1.6rem;
  }
}
.top-contact-section
  .contact-form
  input[type="email"]::-webkit-input-placeholder,
.top-contact-section
  .contact-form
  input[type="number"]::-webkit-input-placeholder,
.top-contact-section
  .contact-form
  input[type="password"]::-webkit-input-placeholder,
.top-contact-section .contact-form input[type="tel"]::-webkit-input-placeholder,
.top-contact-section
  .contact-form
  input[type="text"]::-webkit-input-placeholder,
.top-contact-section .contact-form select::-webkit-input-placeholder,
.top-contact-section .contact-form textarea::-webkit-input-placeholder {
  color: #c3c3c3;
}
.top-contact-section .contact-form input[type="email"]::-moz-placeholder,
.top-contact-section .contact-form input[type="number"]::-moz-placeholder,
.top-contact-section .contact-form input[type="password"]::-moz-placeholder,
.top-contact-section .contact-form input[type="tel"]::-moz-placeholder,
.top-contact-section .contact-form input[type="text"]::-moz-placeholder,
.top-contact-section .contact-form select::-moz-placeholder,
.top-contact-section .contact-form textarea::-moz-placeholder {
  color: #c3c3c3;
}
.top-contact-section .contact-form input[type="email"]:-ms-input-placeholder,
.top-contact-section .contact-form input[type="number"]:-ms-input-placeholder,
.top-contact-section .contact-form input[type="password"]:-ms-input-placeholder,
.top-contact-section .contact-form input[type="tel"]:-ms-input-placeholder,
.top-contact-section .contact-form input[type="text"]:-ms-input-placeholder,
.top-contact-section .contact-form select:-ms-input-placeholder,
.top-contact-section .contact-form textarea:-ms-input-placeholder {
  color: #c3c3c3;
}
.top-contact-section .contact-form input[type="email"]::-ms-input-placeholder,
.top-contact-section .contact-form input[type="number"]::-ms-input-placeholder,
.top-contact-section
  .contact-form
  input[type="password"]::-ms-input-placeholder,
.top-contact-section .contact-form input[type="tel"]::-ms-input-placeholder,
.top-contact-section .contact-form input[type="text"]::-ms-input-placeholder,
.top-contact-section .contact-form select::-ms-input-placeholder,
.top-contact-section .contact-form textarea::-ms-input-placeholder {
  color: #c3c3c3;
}
.top-contact-section .contact-form input[type="email"]::placeholder,
.top-contact-section .contact-form input[type="number"]::placeholder,
.top-contact-section .contact-form input[type="password"]::placeholder,
.top-contact-section .contact-form input[type="tel"]::placeholder,
.top-contact-section .contact-form input[type="text"]::placeholder,
.top-contact-section .contact-form select::placeholder,
.top-contact-section .contact-form textarea::placeholder {
  color: #c3c3c3;
}
.top-contact-section .contact-form input[type="email"],
.top-contact-section .contact-form input[type="number"],
.top-contact-section .contact-form input[type="password"],
.top-contact-section .contact-form input[type="tel"],
.top-contact-section .contact-form input[type="text"],
.top-contact-section .contact-form select {
  height: 5.6rem;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .contact-form input[type="email"],
  .top-contact-section .contact-form input[type="number"],
  .top-contact-section .contact-form input[type="password"],
  .top-contact-section .contact-form input[type="tel"],
  .top-contact-section .contact-form input[type="text"],
  .top-contact-section .contact-form select {
    height: 5.6rem;
  }
}
.top-contact-section .contact-form textarea {
  height: 20rem;
}
.top-contact-section .contact-form input[type="email"]:focus,
.top-contact-section .contact-form input[type="number"]:focus,
.top-contact-section .contact-form input[type="password"]:focus,
.top-contact-section .contact-form input[type="tel"]:focus,
.top-contact-section .contact-form input[type="text"]:focus,
.top-contact-section .contact-form select:focus,
.top-contact-section .contact-form textarea:focus {
  border-color: #113892;
}
.top-contact-section .contact-form .form-inputs {
  position: relative;
}
.top-contact-section .contact-form .form-inputs > li {
  position: relative;
}
.top-contact-section .contact-form .form-inputs > li:not(:last-child) {
  margin-bottom: 3rem;
}
.top-contact-section .contact-form .form-accept {
  position: relative;
  display: block;
  text-align: center;
  width: 100%;
  margin-top: 4rem;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .contact-form .form-accept {
    margin-top: 3rem;
  }
}
.top-contact-section .contact-form .form-accept a {
  color: inherit;
  text-decoration: underline;
}
.top-contact-section .contact-form .form-submit {
  position: relative;
  margin-top: 5rem;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .contact-form .form-submit {
    margin-top: 3rem;
  }
}
.top-contact-section .contact-form .form-submit .btn-submit {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 33rem;
  max-width: 100%;
  height: 7.6rem;
  padding: 1rem 1rem;
  background: #ff6a00;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 900;
  letter-spacing: 0.05em;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  border: 1px solid #ff6a00;
  border-radius: 7.2rem;
  -webkit-transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  overflow: hidden;
  margin: 0 auto;
  z-index: 0;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .contact-form .form-submit .btn-submit {
    height: 6.4rem;
    width: 27rem;
    font-size: 1.6rem;
    line-height: 1.5;
    border-radius: 6.4rem;
  }
}
.top-contact-section .contact-form .form-submit .btn-submit span {
  position: relative;
  color: inherit;
  text-decoration: none;
  z-index: 3;
}
.top-contact-section .contact-form .form-submit .btn-submit:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  background: #ffffff;
  width: 100%;
  height: 100%;
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1),
    -webkit-transform 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  z-index: 1;
}
.top-contact-section .contact-form .form-submit .btn-submit:after {
  content: "";
  position: absolute;
  top: calc(50% - 0.8rem);
  right: 3rem;
  width: 2.5rem;
  height: 1.6rem;
  background-image: url("data:image/svg+xml,%3Csvg width='25' height='16' viewBox='0 0 25 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.453613 7.69727H23.299' stroke='white'/%3E%3Cpath d='M14.7319 0.720703L23.2989 7.69745L14.7319 14.6742' stroke='white'/%3E%3C/svg%3E%0A");
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  -webkit-transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  transition: all 0.6s cubic-bezier(0.8, 0, 0.2, 1);
  z-index: 3;
}
.top-contact-section .contact-form .form-submit .btn-submit:hover {
  color: #ff6a00;
}
.top-contact-section .contact-form .form-submit .btn-submit:hover:before {
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}
.top-contact-section .contact-form .form-submit .btn-submit:hover:after {
  background-image: url("data:image/svg+xml,%3Csvg width='25' height='16' viewBox='0 0 25 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.453613 7.69727H23.299' stroke='%23FF6A00'/%3E%3Cpath d='M14.7319 0.720703L23.2989 7.69745L14.7319 14.6742' stroke='%23FF6A00'/%3E%3C/svg%3E%0A");
}
.top-contact-section .contact-form .input-group {
  position: relative;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 27rem 3rem minmax(0rem, 1fr);
  grid-template-columns: 27rem minmax(0rem, 1fr);
  gap: 3rem;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .contact-form .input-group {
    -ms-grid-columns: minmax(0rem, 1fr);
    grid-template-columns: minmax(0rem, 1fr);
    gap: 1.2rem 2rem;
  }
}
.top-contact-section .contact-form .input-group > li {
  position: relative;
}
.top-contact-section .contact-form .input-group > li > label {
  position: relative;
  display: block;
  font-weight: 700;
  margin-top: 1rem;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .contact-form .input-group > li > label {
    margin: 0;
  }
}
.top-contact-section .contact-form .input-group > li > label .required {
  position: relative;
  display: inline-block;
  padding: 0.2rem 1rem 0.3rem;
  background: #e60012;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2.4rem;
  color: #ffffff;
  text-align: center;
  border-radius: 0.3rem;
  margin-left: 2rem;
}
.top-contact-section .contact-form .input {
  position: relative;
}
.top-contact-section .contact-form .error-msg,
.top-contact-section .contact-form .validate {
  color: #e60012;
}
.top-contact-section .contact-form .wpcf7-form-control-wrap {
  position: relative;
  display: block;
}
.top-contact-section .contact-form .wpcf7-list-item {
  position: relative;
  display: block;
  padding-left: 0;
  margin: 0;
}
.top-contact-section .contact-form .wpcf7-list-item label {
  display: inline-block;
  cursor: pointer;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"],
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"] {
  position: absolute;
  opacity: 0;
  visibility: hidden;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"]
  + .wpcf7-list-item-label,
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]
  + .wpcf7-list-item-label {
  position: relative;
  display: inline-block;
  padding-left: 3.6rem;
}
@media only screen and (max-width: 768px) {
  .top-contact-section
    .contact-form
    .wpcf7-list-item.wpcf7-list-item
    [type="checkbox"]
    + .wpcf7-list-item-label,
  .top-contact-section
    .contact-form
    .wpcf7-list-item.wpcf7-list-item
    [type="radio"]
    + .wpcf7-list-item-label {
    padding-left: 3.6rem;
  }
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"]
  + .wpcf7-list-item-label:after,
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"]
  + .wpcf7-list-item-label:before,
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]
  + .wpcf7-list-item-label:after,
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]
  + .wpcf7-list-item-label:before {
  content: "";
  position: absolute;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]
  + .wpcf7-list-item-label:after,
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]
  + .wpcf7-list-item-label:before {
  border-radius: 5rem;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]
  + .wpcf7-list-item-label:before {
  top: 0.5rem;
  left: 0;
  width: 2rem;
  height: 2rem;
  border: 1px solid #262626;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]
  + .wpcf7-list-item-label:after {
  top: 1rem;
  left: 0.5rem;
  width: 1rem;
  height: 1rem;
  background: #262626;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]:not(:checked)
  + .wpcf7-list-item-label:after {
  opacity: 0;
  visibility: hidden;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="radio"]:checked
  + .wpcf7-list-item-label:after {
  opacity: 1;
  visibility: visible;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"]
  + .wpcf7-list-item-label:before {
  top: 0.4rem;
  left: 0;
  width: 2.4rem;
  height: 2.4rem;
  background-color: #ffffff;
  border: 1px solid #113892;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"]
  + .wpcf7-list-item-label:after {
  top: -0.3rem;
  left: 1.2rem;
  width: 1rem;
  height: 2.4rem;
  border: 1px solid #113892;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"]:not(:checked)
  + .wpcf7-list-item-label:after {
  opacity: 0;
  visibility: hidden;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"]:checked
  + .wpcf7-list-item-label:before {
  border-color: #113892;
}
.top-contact-section
  .contact-form
  .wpcf7-list-item.wpcf7-list-item
  [type="checkbox"]:checked
  + .wpcf7-list-item-label:after {
  opacity: 1;
  visibility: visible;
}
.top-contact-section .contact-form .wpcf7-spinner {
  display: none;
}
.top-contact-section .contact-form .wpcf7-response-output {
  position: relative;
  width: 100%;
  padding: 2rem 2.4rem;
  margin: 4rem auto 0;
}
@media only screen and (max-width: 768px) {
  .top-contact-section .contact-form .wpcf7-response-output {
    margin-top: 3.2rem;
  }
}
.top-contact-section .contact-form .contact-form-step {
  position: relative;
}
.top-contact-section .contact-form .contact-form-step.form-step01 {
  position: relative;
  display: block;
}
.top-contact-section .contact-form .contact-form-step.form-step02 {
  position: relative;
  display: none;
}
.top-contact-section
  .contact-form
  .contact-form-step.form-step02
  .form-complete {
  position: relative;
  padding: 4rem 0;
}
.top-contact-section
  .contact-form
  .contact-form-step.form-step02
  .form-complete
  h4 {
  position: relative;
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
  color: #113892;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 768px) {
  .top-contact-section
    .contact-form
    .contact-form-step.form-step02
    .form-complete
    h4 {
    font-size: 2rem;
  }
}
.top-contact-section
  .contact-form
  .contact-form-step.form-step02
  .form-complete
  p {
  position: relative;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.875;
  letter-spacing: 0.05em;
  text-align: center;
}
.top-contact-section .wpcf7-response-output {
  display: none;
}
