/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
  line-height: 1.15; /* 1 */
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: inherit;
  font-size: inherit;
}

h1,
h2,
h3 {
  font-weight: bold;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  margin: 0;
  clear: both;
  overflow: visible; /* 2 */
  border-top-width: 1px;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-size: inherit; /* 2 */
  font-family: monospace, monospace; /* 1 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none; /* 1 */
  -moz-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit; /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

/* global.scss */
@font-face {
  font-family: "keifont";
  src: url("../fonts/keifont.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
a,
img {
  width: 100%;
  display: block;
}

html {
  width: 100%;
  max-width: min(400px, 100vw);
  margin: auto;
  overflow-x: hidden;
  scroll-behavior: smooth;
}
@media only screen and (max-width: 768px) {
  html {
    max-width: 130.1694915254vw;
  }
}

body {
  font-family: "Noto Sans JP", sans-serif;
  width: 100%;
  margin: 0 auto;
  overflow-x: hidden;
}

.header {
  width: 100%;
  overflow-x: hidden;
  padding-bottom: min(27.1186440678px, 6.7796610169vw);
  background-image: url(../images/header_bk_img.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 768px) {
  .header {
    padding-bottom: 6.7796610169vw;
  }
}
.header.thanks {
  background-color: #ffffff;
  background-image: none;
  padding-bottom: 0;
}
.header.request {
  background-color: #ffffff;
  background-image: none;
  padding-bottom: 0;
}
.header-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: min(13.5593220339px, 3.3898305085vw);
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  right: 0;
  z-index: 100;
  width: min(400px, 100vw);
}
.header-top.index.scroll {
  background-color: #eef1f1;
}
@media only screen and (max-width: 768px) {
  .header-top {
    padding: 3.3898305085vw;
    width: 100vw;
  }
}
.header-top-logo {
  width: min(96.9491525424px, 24.2372881356vw);
  height: auto;
}
@media only screen and (max-width: 768px) {
  .header-top-logo {
    width: 24.2372881356vw;
  }
}
.header-top-button {
  display: flex;
  align-items: center;
  gap: min(6.7796610169px, 1.6949152542vw);
}
@media only screen and (max-width: 768px) {
  .header-top-button {
    gap: 1.6949152542vw;
  }
}
.header-top-button-link1 {
  width: min(123.3898305085px, 30.8474576271vw);
}
@media only screen and (max-width: 768px) {
  .header-top-button-link1 {
    width: 30.8474576271vw;
  }
}
.header-top-button-link2 {
  width: min(115.9322033898px, 28.9830508475vw);
  height: auto;
}
@media only screen and (max-width: 768px) {
  .header-top-button-link2 {
    width: 28.9830508475vw;
  }
}
.header-top-button-link2 img {
  width: 100%;
  height: auto;
}
.header-text1 {
  width: min(122.0338983051px, 30.5084745763vw);
  height: auto;
  margin: auto;
  margin-top: min(88.1355932203px, 22.0338983051vw);
}
@media only screen and (max-width: 768px) {
  .header-text1 {
    width: 30.5084745763vw;
    margin-top: 22.0338983051vw;
  }
}
.header-text2 {
  font-size: min(29.1525423729px, 7.2881355932vw);
  line-height: min(29.1525423729px, 7.2881355932vw);
  font-weight: bold;
  text-align: center;
  color: #000000;
  margin-top: min(3.3898305085px, 0.8474576271vw);
  font-family: "Noto Sans JP", sans-serif;
}
@media only screen and (max-width: 768px) {
  .header-text2 {
    font-size: 7.2881355932vw;
    line-height: 7.2881355932vw;
    margin-top: 0.8474576271vw;
  }
}
.header-text3 {
  width: min(306.4406779661px, 76.6101694915vw);
  height: auto;
  margin: auto;
  margin-top: min(6.7796610169px, 1.6949152542vw);
}
@media only screen and (max-width: 768px) {
  .header-text3 {
    width: 76.6101694915vw;
    margin-top: 1.6949152542vw;
  }
}
.header-text4 {
  width: min(344.406779661px, 86.1016949153vw);
  height: auto;
  margin: auto;
  margin-top: min(6.7796610169px, 1.6949152542vw);
}
@media only screen and (max-width: 768px) {
  .header-text4 {
    width: 86.1016949153vw;
    margin-top: 1.6949152542vw;
  }
}
.header-text5 {
  font-size: min(16.2711864407px, 4.0677966102vw);
  line-height: min(33.8983050847px, 8.4745762712vw);
  text-align: center;
  color: #000000;
  font-weight: bold;
  margin-top: min(27.1186440678px, 6.7796610169vw);
  font-family: "Noto Sans JP", sans-serif;
}
@media only screen and (max-width: 768px) {
  .header-text5 {
    font-size: 4.0677966102vw;
    line-height: 8.4745762712vw;
    margin-top: 6.7796610169vw;
  }
}
.header-link1 {
  width: min(334.2372881356px, 83.5593220339vw);
  height: auto;
  margin: auto;
  margin-top: min(33.8983050847px, 8.4745762712vw);
  display: flex;
  flex-direction: column;
  gap: min(13.5593220339px, 3.3898305085vw);
}
@media only screen and (max-width: 768px) {
  .header-link1 {
    width: 83.5593220339vw;
    margin-top: 8.4745762712vw;
    gap: 3.3898305085vw;
  }
}
.header-link1 a {
  width: 100%;
  height: auto;
}
.header-link1 a img {
  width: 100%;
  height: auto;
}

.main {
  width: 100%;
  overflow-x: hidden;
  margin: auto;
}
.main .section1 {
  padding-top: min(47.4576271186px, 11.8644067797vw);
}
@media only screen and (max-width: 768px) {
  .main .section1 {
    padding-top: 11.8644067797vw;
  }
}
.main .section1-text1 {
  font-size: min(32.5423728814px, 8.1355932203vw);
  line-height: min(44.7457627119px, 11.186440678vw);
  font-weight: bold;
  text-align: center;
  color: #000000;
  margin-top: min(3.3898305085px, 0.8474576271vw);
  font-family: "Noto Sans JP", sans-serif;
}
@media only screen and (max-width: 768px) {
  .main .section1-text1 {
    font-size: 8.1355932203vw;
    line-height: 11.186440678vw;
    margin-top: 0.8474576271vw;
  }
}
.main .section1-text1 span {
  color: #000000;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(44.7457627119px, 11.186440678vw);
  position: relative;
}
@media only screen and (max-width: 768px) {
  .main .section1-text1 span {
    font-size: 11.186440678vw;
  }
}
.main .section1-text1 span::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 85%;
  height: min(14.9152542373px, 3.7288135593vw);
  background-color: #fbe44e;
  z-index: -1;
}
@media only screen and (max-width: 768px) {
  .main .section1-text1 span::before {
    height: 3.7288135593vw;
  }
}
.main .section1-text2 {
  width: min(381.6949152542px, 95.4237288136vw);
  height: auto;
  margin: auto;
  margin-top: min(37.2881355932px, 9.3220338983vw);
}
@media only screen and (max-width: 768px) {
  .main .section1-text2 {
    width: 95.4237288136vw;
    margin-top: 9.3220338983vw;
  }
}
.main .section2-title {
  width: 100%;
  height: auto;
  margin: auto;
  margin-top: min(37.2881355932px, 9.3220338983vw);
}
@media only screen and (max-width: 768px) {
  .main .section2-title {
    margin-top: 9.3220338983vw;
  }
}
.main .section2-text1 {
  font-size: min(27.1186440678px, 6.7796610169vw);
  line-height: min(27.1186440678px, 6.7796610169vw);
  font-weight: bold;
  text-align: center;
  color: #000000;
  margin-top: min(74.5762711864px, 18.6440677966vw);
  font-family: "Noto Sans JP", sans-serif;
}
@media only screen and (max-width: 768px) {
  .main .section2-text1 {
    font-size: 6.7796610169vw;
    line-height: 6.7796610169vw;
    margin-top: 18.6440677966vw;
  }
}
.main .section2-ul {
  margin-top: min(47.4576271186px, 11.8644067797vw);
}
@media only screen and (max-width: 768px) {
  .main .section2-ul {
    margin-top: 11.8644067797vw;
  }
}
.main .section2-ul ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  width: min(366.1016949153px, 91.5254237288vw);
  margin: auto;
  gap: min(61.0169491525px, 15.2542372881vw);
}
@media only screen and (max-width: 768px) {
  .main .section2-ul ul {
    width: 91.5254237288vw;
    gap: 15.2542372881vw;
  }
}
.main .section2-ul ul li {
  width: 100%;
}
.main .section2-ul ul li .section2-ul-li-content {
  border: 1px solid #333333;
  border-radius: min(20.3389830508px, 5.0847457627vw);
}
@media only screen and (max-width: 768px) {
  .main .section2-ul ul li .section2-ul-li-content {
    border-radius: 5.0847457627vw;
  }
}
.main .section2-ul ul li .section2-ul-li-content h3 {
  font-size: min(16.2711864407px, 4.0677966102vw);
  line-height: min(16.2711864407px, 4.0677966102vw);
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  padding: min(16.9491525424px, 4.2372881356vw) 0;
  font-family: "Noto Sans JP", sans-serif;
  border-radius: min(20.3389830508px, 5.0847457627vw) min(20.3389830508px, 5.0847457627vw) 0 0;
  background-color: #da8584;
}
@media only screen and (max-width: 768px) {
  .main .section2-ul ul li .section2-ul-li-content h3 {
    border-radius: 5.0847457627vw 5.0847457627vw 0 0;
    padding: 4.2372881356vw 0;
    font-size: 4.0677966102vw;
    line-height: 4.0677966102vw;
  }
}
.main .section2-ul ul li .section2-ul-li-content img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.main .section2-ul ul li .section2-ul-li-content div {
  font-size: min(13.5593220339px, 3.3898305085vw);
  line-height: min(33.8983050847px, 8.4745762712vw);
  font-weight: 700;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  padding: min(13.5593220339px, 3.3898305085vw) 0;
  width: min(305.0847457627px, 76.2711864407vw);
  margin: auto;
}
@media only screen and (max-width: 768px) {
  .main .section2-ul ul li .section2-ul-li-content div {
    width: 76.2711864407vw;
    padding: 3.3898305085vw 0;
    font-size: 3.3898305085vw;
    line-height: 8.4745762712vw;
  }
}
.main .section2-ul ul li .section2-ul-li-arrow {
  width: min(54.2372881356px, 13.5593220339vw);
  height: auto;
  margin: auto;
  margin-top: min(38.6440677966px, 9.6610169492vw);
}
@media only screen and (max-width: 768px) {
  .main .section2-ul ul li .section2-ul-li-arrow {
    width: 13.5593220339vw;
    margin-top: 9.6610169492vw;
  }
}
.main .section2-ul ul li .section2-ul-li-arrow img {
  width: 100%;
  height: auto;
}
.main .section2-text2 {
  font-size: min(10.8474576271px, 2.7118644068vw);
  line-height: min(33.8983050847px, 8.4745762712vw);
  font-weight: 700;
  color: #666666;
  font-family: "Noto Sans JP", sans-serif;
  margin: auto;
  margin-top: min(16.9491525424px, 4.2372881356vw);
  width: min(366.1016949153px, 91.5254237288vw);
}
@media only screen and (max-width: 768px) {
  .main .section2-text2 {
    font-size: 2.7118644068vw;
    line-height: 8.4745762712vw;
    margin-top: 4.2372881356vw;
    width: 91.5254237288vw;
  }
}
.main .section2-image {
  width: min(372.8813559322px, 93.2203389831vw);
  height: auto;
  margin: auto;
  margin-top: min(54.2372881356px, 13.5593220339vw);
}
@media only screen and (max-width: 768px) {
  .main .section2-image {
    width: 93.2203389831vw;
    margin-top: 13.5593220339vw;
  }
}
.main .section2-image img {
  width: 100%;
  height: auto;
}
.main .section3 {
  margin-top: min(101.6949152542px, 25.4237288136vw);
  padding-bottom: min(61.0169491525px, 15.2542372881vw);
}
@media only screen and (max-width: 768px) {
  .main .section3 {
    margin-top: 25.4237288136vw;
    padding-bottom: 15.2542372881vw;
  }
}
.main .section3-wave {
  margin-top: max(-74.5762711864px, -18.6440677966vw);
  z-index: -1;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .main .section3-wave {
    margin-top: -18.6440677966vw;
  }
}
.main .section3-title {
  font-size: min(27.1186440678px, 6.7796610169vw);
  line-height: min(27.1186440678px, 6.7796610169vw);
  font-weight: 700;
  text-align: center;
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
}
@media only screen and (max-width: 768px) {
  .main .section3-title {
    font-size: 6.7796610169vw;
    line-height: 6.7796610169vw;
  }
}
.main .section3-ul {
  padding-top: min(20.3389830508px, 5.0847457627vw);
  background-color: #eef1f1;
  margin-top: max(-6.7796610169px, -1.6949152542vw);
}
@media only screen and (max-width: 768px) {
  .main .section3-ul {
    margin-top: -1.6949152542vw;
    padding-top: 5.0847457627vw;
  }
}
.main .section3-ul ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  width: min(371.5254237288px, 92.8813559322vw);
  margin: auto;
  gap: min(27.1186440678px, 6.7796610169vw);
}
@media only screen and (max-width: 768px) {
  .main .section3-ul ul {
    width: 92.8813559322vw;
    gap: 6.7796610169vw;
  }
}
.main .section3-ul ul li {
  width: 100%;
}
.main .section3-ul ul li .section3-ul-li-content {
  border-radius: min(20.3389830508px, 5.0847457627vw);
  background-color: #ffffff;
  padding: min(20.3389830508px, 5.0847457627vw) 0;
}
@media only screen and (max-width: 768px) {
  .main .section3-ul ul li .section3-ul-li-content {
    border-radius: 5.0847457627vw;
    padding: 5.0847457627vw 0;
  }
}
.main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img {
  height: auto;
  margin: auto;
}
.main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img img {
  width: 100%;
  height: auto;
}
.main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img.img1 {
  width: min(90.1694915254px, 22.5423728814vw);
}
@media only screen and (max-width: 768px) {
  .main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img.img1 {
    width: 22.5423728814vw;
  }
}
.main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img.img2 {
  width: min(106.4406779661px, 26.6101694915vw);
}
@media only screen and (max-width: 768px) {
  .main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img.img2 {
    width: 26.6101694915vw;
  }
}
.main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img.img3 {
  width: min(142.3728813559px, 35.593220339vw);
}
@media only screen and (max-width: 768px) {
  .main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img.img3 {
    width: 35.593220339vw;
  }
}
.main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img.img4 {
  width: min(86.7796610169px, 21.6949152542vw);
}
@media only screen and (max-width: 768px) {
  .main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-title-img.img4 {
    width: 21.6949152542vw;
  }
}
.main .section3-ul ul li .section3-ul-li-content h3 {
  font-size: min(18.9830508475px, 4.7457627119vw);
  line-height: min(33.2203389831px, 8.3050847458vw);
  font-weight: 700;
  text-align: center;
  color: #333333;
  margin-top: min(13.5593220339px, 3.3898305085vw);
  font-family: "Noto Sans JP", sans-serif;
}
@media only screen and (max-width: 768px) {
  .main .section3-ul ul li .section3-ul-li-content h3 {
    font-size: 4.7457627119vw;
    line-height: 8.3050847458vw;
    margin-top: 3.3898305085vw;
  }
}
.main .section3-ul ul li .section3-ul-li-content h3.title1 span {
  color: #bd5e6a;
}
.main .section3-ul ul li .section3-ul-li-content h3.title2 span {
  color: #eb3a53;
}
.main .section3-ul ul li .section3-ul-li-content h3.title3 span {
  color: #bd5e6a;
}
.main .section3-ul ul li .section3-ul-li-content h3.title4 span {
  color: #eb3a53;
}
.main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-text {
  font-size: min(13.5593220339px, 3.3898305085vw);
  line-height: min(29.8305084746px, 7.4576271186vw);
  font-weight: 700;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  margin-top: min(17.6271186441px, 4.406779661vw);
}
@media only screen and (max-width: 768px) {
  .main .section3-ul ul li .section3-ul-li-content .section3-ul-li-content-text {
    font-size: 3.3898305085vw;
    line-height: 7.4576271186vw;
    margin-top: 4.406779661vw;
  }
}
.main .section3-button {
  height: auto;
  margin: auto;
  padding-top: min(47.4576271186px, 11.8644067797vw);
  padding-bottom: min(67.7966101695px, 16.9491525424vw);
  background-color: #eef1f1;
  margin-top: max(-6.7796610169px, -1.6949152542vw);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  gap: min(24.406779661px, 6.1016949153vw);
}
@media only screen and (max-width: 768px) {
  .main .section3-button {
    margin-top: -1.6949152542vw;
    padding-top: 11.8644067797vw;
    padding-bottom: 16.9491525424vw;
    gap: 6.1016949153vw;
  }
}
.main .section3-button a {
  width: min(334.2372881356px, 83.5593220339vw);
  margin: auto;
}
@media only screen and (max-width: 768px) {
  .main .section3-button a {
    width: 83.5593220339vw;
  }
}
.main .section3-button a img {
  width: 100%;
  height: auto;
}
.main .section3-4-wave {
  margin-top: max(-142.3728813559px, -35.593220339vw);
  z-index: 10;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .main .section3-4-wave {
    margin-top: -35.593220339vw;
  }
}
.main .section4 {
  margin-top: min(27.1186440678px, 6.7796610169vw);
}
@media only screen and (max-width: 768px) {
  .main .section4 {
    margin-top: 6.7796610169vw;
  }
}
.main .section4-title {
  font-size: min(27.1186440678px, 6.7796610169vw);
  line-height: min(27.1186440678px, 6.7796610169vw);
  font-weight: 700;
  text-align: center;
  color: #000000;
}
@media only screen and (max-width: 768px) {
  .main .section4-title {
    font-size: 6.7796610169vw;
    line-height: 6.7796610169vw;
  }
}
.main .section4-text1 {
  font-size: min(13.5593220339px, 3.3898305085vw);
  line-height: min(29.8305084746px, 7.4576271186vw);
  font-weight: 700;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  margin-top: min(33.8983050847px, 8.4745762712vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-text1 {
    font-size: 3.3898305085vw;
    line-height: 7.4576271186vw;
    margin-top: 8.4745762712vw;
  }
}
.main .section4-ul {
  margin-top: min(47.4576271186px, 11.8644067797vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul {
    margin-top: 11.8644067797vw;
  }
}
.main .section4-ul ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  width: min(262.3728813559px, 65.593220339vw);
  margin: auto;
  gap: min(61.0169491525px, 15.2542372881vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul {
    width: 65.593220339vw;
    gap: 15.2542372881vw;
  }
}
.main .section4-ul ul li {
  width: 100%;
}
.main .section4-ul ul li .section4-ul-li-content {
  border: 1px solid #000000;
  border-radius: min(11.5254237288px, 2.8813559322vw);
  position: relative;
  padding-bottom: min(27.1186440678px, 6.7796610169vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-content {
    border-radius: 2.8813559322vw;
    padding-bottom: 6.7796610169vw;
  }
}
.main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-number {
  position: absolute;
  top: max(-28.4745762712px, -7.1186440678vw);
  left: 50%;
  transform: translateX(-50%);
  width: min(56.9491525424px, 14.2372881356vw);
  height: min(56.9491525424px, 14.2372881356vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-number {
    width: 14.2372881356vw;
    height: 14.2372881356vw;
    top: -7.1186440678vw;
  }
}
.main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-number img {
  width: 100%;
  height: auto;
}
.main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-title-img {
  width: min(56.2711864407px, 14.0677966102vw);
  height: auto;
  margin: auto;
  margin-top: min(37.2881355932px, 9.3220338983vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-title-img {
    width: 14.0677966102vw;
    margin-top: 9.3220338983vw;
  }
}
.main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-title-img.img1 {
  width: min(56.2711864407px, 14.0677966102vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-title-img.img1 {
    width: 14.0677966102vw;
  }
}
.main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-title-img.img2 {
  width: min(59.6610169492px, 14.9152542373vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-title-img.img2 {
    width: 14.9152542373vw;
  }
}
.main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-title-img.img3 {
  width: min(28.4745762712px, 7.1186440678vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-title-img.img3 {
    width: 7.1186440678vw;
  }
}
.main .section4-ul ul li .section4-ul-li-content h3 {
  font-size: min(20.3389830508px, 5.0847457627vw);
  line-height: min(20.3389830508px, 5.0847457627vw);
  font-weight: 700;
  text-align: center;
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
  margin-top: min(20.3389830508px, 5.0847457627vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-content h3 {
    font-size: 5.0847457627vw;
    line-height: 5.0847457627vw;
    margin-top: 5.0847457627vw;
  }
}
.main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-text {
  font-size: min(13.5593220339px, 3.3898305085vw);
  line-height: min(29.8305084746px, 7.4576271186vw);
  font-weight: 700;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  margin-top: min(13.5593220339px, 3.3898305085vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-content .section4-ul-li-content-text {
    font-size: 3.3898305085vw;
    line-height: 7.4576271186vw;
    margin-top: 3.3898305085vw;
  }
}
.main .section4-ul ul li .section4-ul-li-arrow {
  width: min(25.7627118644px, 6.4406779661vw);
  height: auto;
  margin: auto;
  margin-top: min(16.9491525424px, 4.2372881356vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-ul ul li .section4-ul-li-arrow {
    width: 6.4406779661vw;
    margin-top: 4.2372881356vw;
  }
}
.main .section4-ul ul li .section4-ul-li-arrow img {
  width: 100%;
  height: auto;
}
.main .section4-conditions {
  margin: auto;
  margin-top: min(54.2372881356px, 13.5593220339vw);
  width: min(338.9830508475px, 84.7457627119vw);
  border: 1px solid #000000;
  border-radius: min(15.593220339px, 3.8983050847vw);
  overflow: hidden;
}
@media only screen and (max-width: 768px) {
  .main .section4-conditions {
    width: 84.7457627119vw;
    border-radius: 3.8983050847vw;
    margin-top: 13.5593220339vw;
  }
}
.main .section4-conditions-title {
  font-size: min(20.3389830508px, 5.0847457627vw);
  line-height: min(69.1525423729px, 17.2881355932vw);
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  background-color: #555fa8;
}
@media only screen and (max-width: 768px) {
  .main .section4-conditions-title {
    font-size: 5.0847457627vw;
    line-height: 17.2881355932vw;
  }
}
.main .section4-conditions-ul ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  padding-top: min(44.0677966102px, 11.0169491525vw);
  padding-bottom: min(54.2372881356px, 13.5593220339vw);
  width: min(293.5593220339px, 73.3898305085vw);
  margin: auto;
}
@media only screen and (max-width: 768px) {
  .main .section4-conditions-ul ul {
    width: 73.3898305085vw;
    padding-top: 11.0169491525vw;
    padding-bottom: 13.5593220339vw;
  }
}
.main .section4-conditions-ul ul li {
  width: 100%;
  font-size: min(13.5593220339px, 3.3898305085vw);
  line-height: min(31.8644067797px, 7.9661016949vw);
  font-weight: 700;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  position: relative;
  padding-left: min(20.3389830508px, 5.0847457627vw);
}
@media only screen and (max-width: 768px) {
  .main .section4-conditions-ul ul li {
    font-size: 3.3898305085vw;
    line-height: 7.9661016949vw;
    padding-left: 5.0847457627vw;
  }
}
.main .section4-conditions-ul ul li::before {
  content: "";
  position: absolute;
  top: min(16.9491525424px, 4.2372881356vw);
  left: min(10.1694915254px, 2.5423728814vw);
  width: min(3.3898305085px, 0.8474576271vw);
  height: min(3.3898305085px, 0.8474576271vw);
  border-radius: 50%;
  background-color: #000000;
}
@media only screen and (max-width: 768px) {
  .main .section4-conditions-ul ul li::before {
    width: 0.8474576271vw;
    height: 0.8474576271vw;
    top: 4.2372881356vw;
    left: 2.5423728814vw;
  }
}
.main .section5 {
  margin-top: min(67.7966101695px, 16.9491525424vw);
}
@media only screen and (max-width: 768px) {
  .main .section5 {
    margin-top: 16.9491525424vw;
  }
}
.main .section5-wave {
  margin-top: max(-128.813559322px, -32.2033898305vw);
  z-index: -1;
  position: relative;
}
@media only screen and (max-width: 768px) {
  .main .section5-wave {
    margin-top: -32.2033898305vw;
  }
}
.main .section5-title {
  font-size: min(25.0847457627px, 6.2711864407vw);
  line-height: min(44.0677966102px, 11.0169491525vw);
  font-weight: 700;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .main .section5-title {
    font-size: 6.2711864407vw;
    line-height: 11.0169491525vw;
  }
}
.main .section5-text1 {
  font-size: min(13.5593220339px, 3.3898305085vw);
  line-height: min(26.4406779661px, 6.6101694915vw);
  font-weight: 700;
  color: #333333;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  padding-top: min(67.7966101695px, 16.9491525424vw);
  background-color: #eef1f1;
  margin-top: max(-6.7796610169px, -1.6949152542vw);
}
@media only screen and (max-width: 768px) {
  .main .section5-text1 {
    font-size: 3.3898305085vw;
    line-height: 6.6101694915vw;
    padding-top: 16.9491525424vw;
    margin-top: -1.6949152542vw;
  }
}
.main .section5-form {
  height: auto;
  background-color: #eef1f1;
  padding-top: min(27.1186440678px, 6.7796610169vw);
  padding-bottom: min(32.5423728814px, 8.1355932203vw);
}
@media only screen and (max-width: 768px) {
  .main .section5-form {
    padding-top: 6.7796610169vw;
    padding-bottom: 8.1355932203vw;
  }
}
.main .section5-form form {
  width: min(366.1016949153px, 91.5254237288vw);
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: start;
  flex-direction: column;
  gap: min(20.3389830508px, 5.0847457627vw);
}
@media only screen and (max-width: 768px) {
  .main .section5-form form {
    width: 91.5254237288vw;
    gap: 5.0847457627vw;
  }
}
.main .section5-form form .form-group {
  width: 100%;
}
.main .section5-form form .form-group label {
  font-size: min(10.8474576271px, 2.7118644068vw);
  line-height: min(10.8474576271px, 2.7118644068vw);
  font-weight: 700;
  color: #333333;
}
@media only screen and (max-width: 768px) {
  .main .section5-form form .form-group label {
    font-size: 2.7118644068vw;
    line-height: 2.7118644068vw;
  }
}
.main .section5-form form .form-group input {
  width: 100%;
  height: auto;
  padding: min(6.7796610169px, 1.6949152542vw);
  margin-top: min(16.9491525424px, 4.2372881356vw);
  background-color: #ffffff;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  color: #333333;
  border: none;
}
@media only screen and (max-width: 768px) {
  .main .section5-form form .form-group input {
    padding: 1.6949152542vw;
    margin-top: 4.2372881356vw;
  }
}
.main .section5-form form .form-group input::placeholder {
  color: #b2b2b2;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
}
.main .section5-form form .form-group input:focus {
  outline: none;
}
.main .section5-form form .form-group textarea {
  width: 100%;
  height: min(169.4915254237px, 42.3728813559vw);
  padding: min(6.7796610169px, 1.6949152542vw);
  margin-top: min(16.9491525424px, 4.2372881356vw);
  background-color: #ffffff;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  color: #333333;
  border: none;
}
@media only screen and (max-width: 768px) {
  .main .section5-form form .form-group textarea {
    height: 42.3728813559vw;
    padding: 1.6949152542vw;
    margin-top: 4.2372881356vw;
  }
}
.main .section5-form form .form-group textarea::placeholder {
  color: #b2b2b2;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
}
.main .section5-form form .form-group textarea:focus {
  outline: none;
}
.main .section5-form form .form-group button {
  width: min(334.2372881356px, 83.5593220339vw);
  height: auto;
  margin: auto;
  margin-top: min(16.9491525424px, 4.2372881356vw);
  border: none;
  display: block;
}
@media only screen and (max-width: 768px) {
  .main .section5-form form .form-group button {
    width: 83.5593220339vw;
    margin-top: 4.2372881356vw;
  }
}
.main .section5-form form .form-group button img {
  width: 100%;
  height: auto;
}

.request-main {
  width: 100%;
  background-color: #ffffff;
}

.request-title {
  font-size: min(21.6949152542px, 5.4237288136vw);
  line-height: min(32.5423728814px, 8.1355932203vw);
  font-weight: bold;
  text-align: center;
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
  margin-top: min(96.9491525424px, 24.2372881356vw);
}
@media only screen and (max-width: 768px) {
  .request-title {
    font-size: 5.4237288136vw;
    line-height: 8.1355932203vw;
    margin-top: 24.2372881356vw;
  }
}

.request-form-container {
  width: 100%;
  max-width: min(400px, 100vw);
  margin: 0 auto;
  margin-top: min(33.8983050847px, 8.4745762712vw);
  background-color: #eef1f1;
  padding: min(35.9322033898px, 8.9830508475vw) 0;
  min-height: calc(100vh - min(183.0508474576px, 45.7627118644vw));
}
@media only screen and (max-width: 768px) {
  .request-form-container {
    max-width: 100vw;
    margin-top: 8.4745762712vw;
    padding: 8.9830508475vw 0;
    min-height: calc(100vh - 45.7627118644vw);
  }
}

.request-form {
  width: min(366.1016949153px, 91.5254237288vw);
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: start;
  flex-direction: column;
  gap: min(20.3389830508px, 5.0847457627vw);
}
@media only screen and (max-width: 768px) {
  .request-form {
    width: 91.5254237288vw;
    gap: 5.0847457627vw;
  }
}
.request-form .form-group {
  width: 100%;
}
.request-form .form-group label {
  font-size: min(10.8474576271px, 2.7118644068vw);
  line-height: min(10.8474576271px, 2.7118644068vw);
  font-weight: 700;
  color: #333333;
}
@media only screen and (max-width: 768px) {
  .request-form .form-group label {
    font-size: 2.7118644068vw;
    line-height: 2.7118644068vw;
  }
}
.request-form .form-group input {
  width: 100%;
  height: auto;
  padding: min(6.7796610169px, 1.6949152542vw);
  margin-top: min(16.9491525424px, 4.2372881356vw);
  background-color: #ffffff;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  color: #333333;
  border: none;
}
@media only screen and (max-width: 768px) {
  .request-form .form-group input {
    padding: 1.6949152542vw;
    margin-top: 4.2372881356vw;
  }
}
.request-form .form-group input::placeholder {
  color: #b2b2b2;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
}
.request-form .form-group input:focus {
  outline: none;
}
.request-form .form-group textarea {
  width: 100%;
  height: min(169.4915254237px, 42.3728813559vw);
  padding: min(6.7796610169px, 1.6949152542vw);
  margin-top: min(16.9491525424px, 4.2372881356vw);
  background-color: #ffffff;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  color: #333333;
  border: none;
}
@media only screen and (max-width: 768px) {
  .request-form .form-group textarea {
    height: 42.3728813559vw;
    padding: 1.6949152542vw;
    margin-top: 4.2372881356vw;
  }
}
.request-form .form-group textarea::placeholder {
  color: #b2b2b2;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
}
.request-form .form-group textarea:focus {
  outline: none;
}
.request-form .form-group button {
  width: min(334.2372881356px, 83.5593220339vw);
  height: auto;
  margin: auto;
  margin-top: min(16.9491525424px, 4.2372881356vw);
  border: none;
  display: block;
}
@media only screen and (max-width: 768px) {
  .request-form .form-group button {
    width: 83.5593220339vw;
    margin-top: 4.2372881356vw;
  }
}
.request-form .form-group button img {
  width: 100%;
  height: auto;
}

.thanks-main {
  width: 100%;
  background-color: #ffffff;
}

.thanks-title {
  font-size: min(20.3389830508px, 5.0847457627vw);
  line-height: min(32.5423728814px, 8.1355932203vw);
  font-weight: bold;
  text-align: center;
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
  margin-top: min(110.5084745763px, 27.6271186441vw);
}
@media only screen and (max-width: 768px) {
  .thanks-title {
    font-size: 5.0847457627vw;
    line-height: 8.1355932203vw;
    margin-top: 27.6271186441vw;
  }
}

.thanks-message {
  width: 100%;
  margin-top: min(33.8983050847px, 8.4745762712vw);
  font-size: min(13.5593220339px, 3.3898305085vw);
  line-height: min(33.2203389831px, 8.3050847458vw);
  font-weight: 700;
  color: #000000;
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .thanks-message {
    font-size: 3.3898305085vw;
    line-height: 8.3050847458vw;
    margin-top: 8.4745762712vw;
  }
}

.thanks-buttons {
  width: 100%;
  max-width: min(280.6779661017px, 70.1694915254vw);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: min(27.1186440678px, 6.7796610169vw);
  margin-top: min(33.8983050847px, 8.4745762712vw);
}
@media only screen and (max-width: 768px) {
  .thanks-buttons {
    max-width: 70.1694915254vw;
    margin-top: 8.4745762712vw;
    gap: 6.7796610169vw;
  }
}

.thanks-button {
  width: 100%;
  padding: min(10.8474576271px, 2.7118644068vw) min(13.5593220339px, 3.3898305085vw);
  font-size: min(16.2711864407px, 4.0677966102vw);
  font-weight: 400;
  text-align: center;
  text-decoration: none;
  border-radius: min(2.7118644068px, 0.6779661017vw);
  display: block;
  transition: opacity 0.3s ease;
  box-sizing: border-box;
  font-family: "keifont";
}
@media only screen and (max-width: 768px) {
  .thanks-button {
    padding: 2.7118644068vw 3.3898305085vw;
    font-size: 4.0677966102vw;
    border-radius: 0.6779661017vw;
  }
}
.thanks-button:hover {
  opacity: 0.8;
}
.thanks-button-gray {
  background-color: #6f6f6f;
  color: #ffffff;
}
.thanks-button-pink {
  background-color: #eb3a53;
  color: #ffffff;
}
.privacy{
    text-align: center;
    font-size: .5em;
    margin-top: 2em;
}

/*# sourceMappingURL=style.css.map */
