*,
:after,
:before {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgba(59, 130, 246, 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia: ;
    --tw-contain-size: ;
    --tw-contain-layout: ;
    --tw-contain-paint: ;
    --tw-contain-style: ;
}

::backdrop {
    --tw-border-spacing-x: 0;
    --tw-border-spacing-y: 0;
    --tw-translate-x: 0;
    --tw-translate-y: 0;
    --tw-rotate: 0;
    --tw-skew-x: 0;
    --tw-skew-y: 0;
    --tw-scale-x: 1;
    --tw-scale-y: 1;
    --tw-pan-x: ;
    --tw-pan-y: ;
    --tw-pinch-zoom: ;
    --tw-scroll-snap-strictness: proximity;
    --tw-gradient-from-position: ;
    --tw-gradient-via-position: ;
    --tw-gradient-to-position: ;
    --tw-ordinal: ;
    --tw-slashed-zero: ;
    --tw-numeric-figure: ;
    --tw-numeric-spacing: ;
    --tw-numeric-fraction: ;
    --tw-ring-inset: ;
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-color: #fff;
    --tw-ring-color: rgba(59, 130, 246, 0.5);
    --tw-ring-offset-shadow: 0 0 #0000;
    --tw-ring-shadow: 0 0 #0000;
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    --tw-blur: ;
    --tw-brightness: ;
    --tw-contrast: ;
    --tw-grayscale: ;
    --tw-hue-rotate: ;
    --tw-invert: ;
    --tw-saturate: ;
    --tw-sepia: ;
    --tw-drop-shadow: ;
    --tw-backdrop-blur: ;
    --tw-backdrop-brightness: ;
    --tw-backdrop-contrast: ;
    --tw-backdrop-grayscale: ;
    --tw-backdrop-hue-rotate: ;
    --tw-backdrop-invert: ;
    --tw-backdrop-opacity: ;
    --tw-backdrop-saturate: ;
    --tw-backdrop-sepia: ;
    --tw-contain-size: ;
    --tw-contain-layout: ;
    --tw-contain-paint: ;
    --tw-contain-style: ;
}

/*
! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com
*/
*,
:after,
:before {
    box-sizing: border-box;
    border: 0 solid #e5e7eb;
}

:after,
:before {
    --tw-content: "";
}

:host,
html {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    -moz-tab-size: 4;
    tab-size: 4;
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-feature-settings: normal;
    font-variation-settings: normal;
    -webkit-tap-highlight-color: transparent;
}

body {
    margin: 0;
    line-height: inherit;
}

hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
}

abbr:where([title]) {
    text-decoration: underline dotted;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-weight: inherit;
}

a {
    text-decoration: inherit;
}

b,
strong {
    font-weight: bolder;
}

code,
kbd,
pre,
samp {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-feature-settings: normal;
    font-variation-settings: normal;
    font-size: 1em;
}

small {
    font-size: 80%;
}

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

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

table {
    text-indent: 0;
    border-color: inherit;
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    font-size: 100%;
    font-weight: inherit;
    line-height: inherit;
    letter-spacing: inherit;
    color: inherit;
    margin: 0;
    padding: 0;
}

button,
select {
    text-transform: none;
}

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
    -webkit-appearance: button;
    background-color: transparent;
    background-image: none;
}

:-moz-focusring {
    outline: auto;
}

:-moz-ui-invalid {
    box-shadow: none;
}

progress {
    vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
    height: auto;
}

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

::-webkit-search-decoration {
    -webkit-appearance: none;
}

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

summary {
    display: list-item;
}

blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
    margin: 0;
}

fieldset {
    margin: 0;
}

fieldset,
legend {
    padding: 0;
}

menu,
ol,
ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

dialog {
    padding: 0;
}

textarea {
    resize: vertical;
}

input::placeholder,
textarea::placeholder {
    opacity: 1;
    color: #9ca3af;
}

[role='button'],
button {
    cursor: pointer;
}

:disabled {
    cursor: default;
}

audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
    display: block;
    vertical-align: middle;
}

[hidden]:where(:not([hidden='until-found'])) {
    display: none;
}

.visible {
    visibility: visible;
}

.absolute {
    position: absolute;
}

.relative {
    position: relative;
}

.right-0 {
    right: 0;
}

.top-0 {
    top: 0;
}

.mx-1 {
    margin-left: 0.25rem;
    margin-right: 0.25rem;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.\!mt-5 {
    margin-top: 1.25rem !important;
}

.mb-10 {
    margin-bottom: 2.5rem;
}

.mb-2 {
    margin-bottom: 0.5rem;
}

.mb-4 {
    margin-bottom: 1rem;
}

.ml-1 {
    margin-left: 0.25rem;
}

.ml-4 {
    margin-left: 1rem;
}

.mr-3 {
    margin-right: 0.75rem;
}

.mr-5 {
    margin-right: 1.25rem;
}

.mr-6 {
    margin-right: 1.5rem;
}

.mt-16 {
    margin-top: 4rem;
}

.mt-2 {
    margin-top: 0.5rem;
}

.mt-3 {
    margin-top: 0.75rem;
}

.mt-4 {
    margin-top: 1rem;
}

.mt-6 {
    margin-top: 1.5rem;
}

.mt-8 {
    margin-top: 2rem;
}

.inline-block {
    display: inline-block;
}

.flex {
    display: flex;
}

.inline-flex {
    display: inline-flex;
}

.table {
    display: table;
}

.hidden {
    display: none;
}

.h-4 {
    height: 1rem;
}

.h-48 {
    height: 12rem;
}

.h-\[100vh\] {
    height: 100vh;
}

.h-full {
    height: 100%;
}

.w-4 {
    width: 1rem;
}

.w-\[100vw\] {
    width: 100vw;
}

.w-\[20px\] {
    width: 20px;
}

.w-\[50\%\] {
    width: 50%;
}

.w-full {
    width: 100%;
}

.max-w-\[470px\] {
    max-width: 470px;
}

.max-w-\[520px\] {
    max-width: 520px;
}

.max-w-\[750px\] {
    max-width: 750px;
}

.origin-center {
    transform-origin: center;
}

.translate-y-\[-1px\] {
    --tw-translate-y: -1px;
}

.translate-y-\[-1px\],
.translate-y-\[1px\] {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-\[1px\] {
    --tw-translate-y: 1px;
}

.rotate-180 {
    --tw-rotate: 180deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.resize {
    resize: both;
}

.list-decimal {
    list-style-type: decimal;
}

.list-disc {
    list-style-type: disc;
}

.flex-col {
    flex-direction: column;
}

.flex-wrap {
    flex-wrap: wrap;
}

.items-start {
    align-items: flex-start;
}

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

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

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

.gap-\[8px\] {
    gap: 8px;
}

.space-y-2 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.self-end {
    align-self: flex-end;
}

.overflow-y-auto {
    overflow-y: auto;
}

.overflow-y-scroll {
    overflow-y: scroll;
}

.scroll-smooth {
    scroll-behavior: smooth;
}

.whitespace-pre-wrap {
    white-space: pre-wrap;
}

.rounded-\[12px\] {
    border-radius: 12px;
}

.bg-\[\#15a1d6\] {
    --tw-bg-opacity: 1;
    background-color: rgb(21 161 214 / var(--tw-bg-opacity, 1));
}

.bg-\[\#FFFFFF\],
.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.px-20 {
    padding-left: 5rem;
    padding-right: 5rem;
}

.px-\[2\%\] {
    padding-left: 2%;
    padding-right: 2%;
}

.px-\[40px\] {
    padding-left: 40px;
    padding-right: 40px;
}

.px-\[8\%\] {
    padding-left: 8%;
    padding-right: 8%;
}

.py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.py-3 {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
}

.py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.py-\[15\%\] {
    padding-top: 15%;
    padding-bottom: 15%;
}

.py-\[16px\] {
    padding-top: 16px;
    padding-bottom: 16px;
}

.pb-16 {
    padding-bottom: 4rem;
}

.pb-20 {
    padding-bottom: 5rem;
}

.pb-8 {
    padding-bottom: 2rem;
}

.pl-2 {
    padding-left: 0.5rem;
}

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

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

.pr-5 {
    padding-right: 1.25rem;
}

.pt-28 {
    padding-top: 7rem;
}

.pt-5 {
    padding-top: 1.25rem;
}

.text-center {
    text-align: center;
}

.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem;
}

.text-\[14px\] {
    font-size: 14px;
}

.text-base {
    font-size: 1rem;
    line-height: 1.5rem;
}

.text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
}

.text-xs {
    font-size: 0.75rem;
    line-height: 1rem;
}

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

.font-bold {
    font-weight: 700;
}

.font-semibold {
    font-weight: 600;
}

.uppercase {
    text-transform: uppercase;
}

.leading-relaxed {
    line-height: 1.625;
}

.text-green-400 {
    --tw-text-opacity: 1;
    color: rgb(74 222 128 / var(--tw-text-opacity, 1));
}

.text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.underline {
    text-decoration-line: underline;
}

.overline {
    text-decoration-line: overline;
}

.blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.transition {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 0.15s;
}

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
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,
html,
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;
}

ol,
ul {
    list-style: none;
}

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

blockquote,
q {
    quotes: none;
}

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

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

button,
input,
select,
textarea {
    font: inherit;
    color: inherit;
    margin: 0;
    padding: 0;
    border: none;
    background: none;
    outline: none;
    box-sizing: border-box;
}

* {
    box-sizing: border-box;
}

:after,
:before {
    box-sizing: inherit;
}

a,
button {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:hover,
button:hover {
    opacity: 0.7;
    cursor: pointer;
}

img,
video {
    display: inline;
    max-width: 100%;
    height: auto;
}

:root {
    --colorBackground: #faf8f4;
    --colorForeground: #02253b;
    --colorMediumGreen: #19ba6a;
    --colorDeepGreen: #008636;
    --colorDarkGreen: #004b34;
    --colorLightBlue: #a8dcf0;
    --colorPowderBlue: #d4f4ff;
    --colorWhite: #fff;
    --colorMintWhite: #f7ffe9;
    --colorLightBlueWhite: #eef7ff;
    --colorRoyalBlue: #005fb7;
}

.font-color-Background {
    color: var(--colorBackground);
}

.font-color-MediumGreen {
    color: var(--colorMediumGreen);
}

.font-color-DeepGreen {
    color: var(--colorDeepGreen);
}

.font-color-DarkGreen {
    color: var(--colorDarkGreen);
}

.font-color-LightBlue {
    color: var(--colorLightBlue);
}

.font-color-PowderBlue {
    color: var(--colorPowderBlue);
}

.font-color-White {
    color: var(--colorWhite);
}

.font-color-MintWhite {
    color: var(--colorMintWhite);
}

.font-color-LightBlueWhite {
    color: var(--colorLightBlueWhite);
}

.font-color-RoyalBlue {
    color: var(--colorRoyalBlue);
}

.background-color-Background {
    background-color: var(--colorBackground);
}

.background-color-MediumGreen {
    background-color: var(--colorMediumGreen);
}

.background-color-DeepGreen {
    background-color: var(--colorDeepGreen);
}

.background-color-DarkGreen {
    background-color: var(--colorDarkGreen);
}

.background-color-LightBlue {
    background-color: var(--colorLightBlue);
}

.background-color-PowderBlue {
    background-color: var(--colorPowderBlue);
}

.background-color-White {
    background-color: var(--colorWhite);
}

.background-color-MintWhite {
    background-color: var(--colorMintWhite);
}

.background-color-LightBlueWhite {
    background-color: var(--colorLightBlueWhite);
}

.background-color-RoyalBlue {
    background-color: var(--colorRoyalBlue);
}

html {
    scroll-behavior: smooth;
}

body {
    font-size: 16px;
    line-height: 1.8;
    color: var(--colorForeground);
    background: var(--colorBackground);
    font-weight: 500;
    letter-spacing: 1.28;
    font-family: Roboto, "Noto Sans JP", sans-serif;
}

@media only screen and (max-width: 767px) {
    body {
        font-size: calc(14vw / 3.75);
        letter-spacing: calc(14vw / 3.75 * 0.08);
    }
}

@media (max-width: 1024px) {
    .pc-only {
        display: none !important;
    }
}

@media (max-width: 767px) or (min-width: 1025px) {
    .tab-only {
        display: none !important;
    }
}

@media (min-width: 1025px) {
    .tab-and-smaller-only {
        display: none !important;
    }
}

@media (max-width: 767px) {
    .tab-and-larger-only {
        display: none !important;
    }
}

@media (min-width: 768px) {
    .sp-only {
        display: none !important;
    }
}

.hover\:underline:hover {
    text-decoration-line: underline;
}

@media (min-width: 481px) {
    .sm\:mx-3 {
        margin-left: 0.75rem;
        margin-right: 0.75rem;
    }

    .sm\:mx-auto {
        margin-left: auto;
        margin-right: auto;
    }

    .sm\:ml-10 {
        margin-left: 2.5rem;
    }

    .sm\:w-24 {
        width: 6rem;
    }
}

@media (min-width: 768px) {
    .md\:ml-16 {
        margin-left: 4rem;
    }

    .md\:mr-16 {
        margin-right: 4rem;
    }

    .md\:mt-0 {
        margin-top: 0;
    }

    .md\:mt-14 {
        margin-top: 3.5rem;
    }

    .md\:mt-3 {
        margin-top: 0.75rem;
    }

    .md\:mt-8 {
        margin-top: 2rem;
    }

    .md\:mt-\[16px\] {
        margin-top: 16px;
    }

    .md\:w-\[50\%\] {
        width: 50%;
    }

    .md\:w-\[55\%\] {
        width: 55%;
    }

    .md\:w-\[78\%\] {
        width: 78%;
    }

    .md\:max-w-\[450px\] {
        max-width: 450px;
    }

    .md\:flex-row {
        flex-direction: row;
    }

    .md\:justify-center {
        justify-content: center;
    }

    .md\:space-x-6 > :not([hidden]) ~ :not([hidden]) {
        --tw-space-x-reverse: 0;
        margin-right: calc(1.5rem * var(--tw-space-x-reverse));
        margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
    }

    .md\:space-y-0 > :not([hidden]) ~ :not([hidden]) {
        --tw-space-y-reverse: 0;
        margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
        margin-bottom: calc(0px * var(--tw-space-y-reverse));
    }

    .md\:px-0 {
        padding-left: 0;
        padding-right: 0;
    }

    .md\:px-40 {
        padding-left: 10rem;
        padding-right: 10rem;
    }

    .md\:pl-4 {
        padding-left: 1rem;
    }

    .md\:pl-5 {
        padding-left: 1.25rem;
    }

    .md\:pr-4 {
        padding-right: 1rem;
    }
}

@media (min-width: 1025px) {
    .lg\:ml-0 {
        margin-left: 0;
    }

    .lg\:mr-0 {
        margin-right: 0;
    }

    .lg\:mt-0 {
        margin-top: 0;
    }

    .lg\:mt-20 {
        margin-top: 5rem;
    }

    .lg\:mt-\[32px\] {
        margin-top: 32px;
    }

    .lg\:w-full {
        width: 100%;
    }

    .lg\:overflow-x-auto {
        overflow-x: auto;
    }

    .lg\:pl-3 {
        padding-left: 0.75rem;
    }

    .lg\:pl-7 {
        padding-left: 1.75rem;
    }

    .lg\:pr-3 {
        padding-right: 0.75rem;
    }

    .lg\:text-\[16px\] {
        font-size: 16px;
    }
}

.color-lp-nada-main {
    color: #15a1d6;
}

.color-lp-nada-green {
    color: #19ba6a;
}

.lp-nada-br-sm-false {
    display: block;
}

@media screen and (max-width: 428px) {
    .lp-nada-br-sm-false {
        display: none;
    }
}

.lp-nada-br-sm-true {
    display: none;
}

@media screen and (max-width: 428px) {
    .lp-nada-br-sm-true {
        display: block;
    }
}

.lp-nada-br-md-false {
    display: block;
}

@media screen and (max-width: 768px) {
    .lp-nada-br-md-false {
        display: none;
    }
}

.lp-nada-br-md-true {
    display: none;
}

@media screen and (max-width: 768px) {
    .lp-nada-br-md-true {
        display: block;
    }
}

.lp-nada-br-lg-false {
    display: block;
}

@media screen and (max-width: 960px) {
    .lp-nada-br-lg-false {
        display: none;
    }
}

.lp-nada-br-lg-true {
    display: none;
}

@media screen and (max-width: 960px) {
    .lp-nada-br-lg-true {
        display: block;
    }
}

.lp-nada-br-xl-false {
    display: block;
}

@media screen and (max-width: 1280px) {
    .lp-nada-br-xl-false {
        display: none;
    }
}

.lp-nada-br-xl-true {
    display: none;
}

@media screen and (max-width: 1280px) {
    .lp-nada-br-xl-true {
        display: block;
    }
}

.lp-nada-wrapper {
    width: 100%;
    max-width: 1280px;
    height: 100%;
    margin: 0 auto;
}

.header-logo {
    width: 56px;
    height: 56px;
}

@media screen and (max-width: 428px) {
    .header-logo {
        width: 48px;
        height: 48px;
    }
}

.header-service-type {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
}

@media screen and (max-width: 768px) {
    .header-service-type {
        font-size: 12px;
    }
}

@media screen and (max-width: 428px) {
    .header-service-type {
        font-size: 10px;
    }
}

.header-menu-button-sp {
    top: 29px;
}

.header-menu-button-pc {
    top: 39px;
}

.header-service-name {
    font-size: 26px;
    font-weight: 700;
    color: #15a1d6;
    line-height: 1.2;
}

@media screen and (max-width: 768px) {
    .header-service-name {
        font-size: 24px;
    }
}

@media screen and (max-width: 428px) {
    .header-service-name {
        font-size: 20px;
    }
}

.header-contact-button {
    padding: 12px 32px;
    background: #15a1d6;
    border-radius: 16px;
    transition: all 0.5s;
    cursor: pointer;
}

.header-contact-button:hover {
    background: #50d0ff;
    transition: all 0.5s;
}

.header-memnu-contact-button {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    padding: 12px 32px;
    margin-top: 48px;
    background: #15a1d6;
    border-radius: 16px;
    transition: all 0.5s;
    cursor: pointer;
}

.header-memnu-contact-button:hover {
    background: #50d0ff;
    transition: all 0.5s;
}

.header-contact-button,
.header-tel-button {
    display: block;
    padding: 10px 20px;
    border-radius: 5px;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    box-sizing: border-box;
}

.header-contact-button {
    background-color: #2196f3;
    color: #fff;
    border: 1px solid #2196f3;
}

.header-contact-button:hover {
    background-color: #1976d2;
    border-color: #1976d2;
}

.header-tel-button-container {
    margin-left: 10px;
}

.header-tel-button {
    background-color: #fff;
    color: #2196f3;
    border: 1px solid #2196f3;
}

.header-tel-button:hover {
    background-color: #f0f8ff;
    color: #1976d2;
    border-color: #1976d2;
}

.header-memnu-contact-button,
.header-memnu-tel-button {
    display: block;
    width: 100%;
    padding: 15px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1.1rem;
    text-align: center;
    white-space: nowrap;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    box-sizing: border-box;
    margin-top: 15px;
}

.header-memnu-contact-button {
    background-color: #2196f3;
    color: #fff;
    border: 1px solid #2196f3;
}

.header-memnu-contact-button:hover {
    background-color: #1976d2;
    border-color: #1976d2;
}

.header-memnu-tel-button {
    background-color: #fff;
    color: #2196f3;
    border: 1px solid #2196f3;
}

.header-memnu-tel-button:hover {
    background-color: #f0f8ff;
    color: #1976d2;
    border-color: #1976d2;
}

.tel-note {
    font-size: 0.7rem;
    color: #555;
    text-align: center;
    margin-top: 15px;
    line-height: 1.5;
}

@media (max-width: 767px) {
    .pc_navigation ul {
        display: flex;
        align-items: center;
    }

    .header-tel-button-container {
        margin-left: 10px;
    }

    .sp_navigation ul {
        flex-direction: column;
        align-items: center;
    }

    .header-memnu-contact-button,
    .header-memnu-tel-button {
        max-width: 300px;
        margin-left: auto;
        margin-right: auto;
    }

    .tel-note br.sp-only {
        display: block;
    }
}

@media (min-width: 768px) {
    .tel-note br.sp-only {
        display: none;
    }
}

#top {
    position: relative;
}

.lp-nada-top {
    width: 100%;
    overflow: hidden;
    background: url(../../../images/lp/nada/main-visual-bg.jpg);
    padding-bottom: 80px;
    opacity: 0;
    animation: clipExpand 1s ease forwards, fadeInBg 1s ease forwards;
    animation-delay: 1.5s, 0.5s;
}

@media screen and (max-width: 768px) {
    .lp-nada-top {
        padding-bottom: 64px;
        clip-path: polygon(100% 0, 100% calc(100% - 64px), 50% 100%, 0 calc(100% - 64px), 0 0);
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-top {
        padding-bottom: 40px;
        clip-path: polygon(100% 0, 100% calc(100% - 40px), 50% 100%, 0 calc(100% - 40px), 0 0);
    }
}

.lp-nada-top-white-bg {
    position: absolute;
    bottom: -1px;
    width: 100%;
    height: 81px;
    background: #fff;
}

@media screen and (max-width: 768px) {
    .lp-nada-top-white-bg {
        height: 65px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-top-white-bg {
        height: 41px;
    }
}

.lp-nada-top-container {
    position: relative;
    width: 100%;
    padding: 160px 120px 20px;
    transition: all 0.5s;
}

@media screen and (max-width: 1280px) {
    .lp-nada-top-container {
        padding: 160px 80px 40px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-top-container {
        padding: 128px 32px 40px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-top-container {
        padding: 128px 24px 40px;
    }
}

.lp-nada-top-main-message {
    position: relative;
    margin-bottom: 16px;
    transform-origin: left;
    transform: scaleX(0);
    animation: expandRight 0.5s ease-out 0.5s forwards;
}

.lp-nada-top-main-message > div {
    width: 100%;
}

.lp-nada-top-main-message > div > div {
    display: flex;
    align-items: center;
    overflow: hidden;
    font-size: 32px;
}

@media screen and (max-width: 960px) {
    .lp-nada-top-main-message > div > div {
        font-size: 24px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-top-main-message > div > div {
        font-size: 20px;
    }
}

.lp-nada-top-main-message > div > div > div {
    height: 3.75em;
    position: relative;
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    .lp-nada-top-main-message > div > div > div {
        height: 5.125em;
    }
}

.lp-nada-top-main-message > div > div > div > div {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, transparent 0%, #ffffff 0%);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    animation: bgWipe 0.5s ease forwards;
    animation-delay: 1.5s;
}

.lp-nada-top-main-message > div > div > div h2 {
    display: inline-block;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0.12em;
    padding: 12px 24px;
}

@media screen and (max-width: 960px) {
    .lp-nada-top-main-message > div > div > div h2 {
        padding: 9px 24px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-top-main-message > div > div > div h2 {
        padding: 7.5px 24px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-top-main-message > div > div > div h2 {
        padding: 6.25px 16px;
    }
}

.lp-nada-top-main-message > div > div > div h2 span {
    color: #19ba6a;
}

.lp-nada-top-sub-message {
    position: relative;
    transform-origin: left;
    transform: scaleX(0);
    animation: expandRight 0.5s ease-out 0.5s forwards;
}

.lp-nada-top-sub-message > div {
    width: 100%;
}

.lp-nada-top-sub-message > div > div {
    display: flex;
    align-items: center;
    overflow: hidden;
    font-size: 16px;
}

@media screen and (max-width: 960px) {
    .lp-nada-top-sub-message > div > div {
        font-size: 14px;
    }
}

.lp-nada-top-sub-message > div > div > div {
    height: 2.5em;
    position: relative;
    background-color: #19ba6a;
    border-radius: 8px;
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    .lp-nada-top-sub-message > div > div > div {
        height: 4em;
        margin-left: auto;
    }
}

.lp-nada-top-sub-message > div > div > div > div {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, transparent 0%, #19ba6a 0%);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    animation: bgWipe 0.5s ease forwards;
    animation-delay: 1.5s;
}

.lp-nada-top-sub-message > div > div > div h3 {
    display: inline-block;
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: 0.12em;
    color: #fff;
    padding: 8px 16px;
}

@media screen and (max-width: 768px) {
    .lp-nada-top-sub-message > div > div > div h3 {
        padding: 7px 16px;
    }
}

.lp-nada-top-introduction {
    margin: 72px 0 0;
    position: relative;
}

@media screen and (max-width: 960px) {
    .lp-nada-top-introduction {
        margin: 72px 0 40px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-top-introduction {
        margin: 16px 0 120px 40px;
    }
}

.lp-nada-top-introduction-contents {
    display: inline-block;
    background: #fff;
    border-radius: 12px;
    text-align: center;
    line-height: 1.5;
    padding: 20px 32px;
}

.lp-nada-top-introduction-contents p {
    font-size: 16px;
    font-weight: 700;
}

@media screen and (max-width: 1280px) {
    .lp-nada-top-introduction-contents p {
        font-size: 14px;
    }
}

.lp-nada-top-introduction-contents span {
    font-size: 14px;
    font-weight: 400;
}

.lp-nada-top-introduction-sougei {
    position: absolute;
    top: -48px;
    left: -40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #faf8f4;
}

.lp-nada-top-introduction-sougei img {
    width: 28px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-top-introduction-sougei img {
        width: 24px;
    }
}

.lp-nada-top-introduction-sougei p {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
}

@media screen and (max-width: 1280px) {
    .lp-nada-top-introduction-sougei p {
        font-size: 10px;
    }
}

.lp-nada-top-image {
    position: relative;
    width: 100%;
    height: 180px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-top-image {
        height: auto;
        aspect-ratio: 6 / 1;
    }
}

.lp-nada-top-image div {
    height: 100%;
}

.lp-nada-top-image-ship {
    position: absolute;
    left: 25%;
    bottom: 0;
    width: 55%;
}

.lp-nada-top-image-text {
    position: absolute;
    left: 75%;
    bottom: 200%;
    transform: rotate(15deg);
    font-size: 32px;
    font-weight: 700;
    white-space: nowrap;
    color: #15a1d6;
    transition: all 0.5s;
}

@media screen and (max-width: 960px) {
    .lp-nada-top-image-text {
        font-size: 24px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-top-image-text {
        font-size: 20px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-top-image-text {
        font-size: 14px;
    }
}

.lp-nada-top-image-text p:first-of-type {
    transform: translateX(-20%);
}

.lp-nada-top-image-text p:nth-of-type(2) {
    transform: translateX(20%);
}

.lp-nada-top-image-nami-back picture {
    width: 10%;
    position: absolute;
}

.lp-nada-top-image-nami-back picture:first-of-type {
    left: 0;
    bottom: 50%;
}

.lp-nada-top-image-nami-back picture:nth-of-type(2) {
    left: 12.5%;
    bottom: 20%;
}

.lp-nada-top-image-nami-back picture:nth-of-type(3) {
    right: 7.5%;
    bottom: 130%;
}

.lp-nada-top-image-nami-back picture:nth-of-type(4) {
    right: -5%;
    bottom: 90%;
}

.lp-nada-top-image-nami-back picture:nth-of-type(5) {
    right: 15.5%;
    bottom: 50%;
}

.lp-nada-top-image-nami-back picture:nth-of-type(6) {
    right: 2.5%;
    bottom: 0;
}

.lp-nada-top-contact-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60%;
    background: #15a1d6;
    border-radius: 12px;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    padding: 12px 0;
    margin: 0 auto;
    transition: all 0.5s;
}

@media screen and (max-width: 1280px) {
    .lp-nada-top-contact-button {
        font-size: 16px;
        height: auto;
        padding: 16px 0;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-top-contact-button {
        width: 75%;
        line-height: 1.4;
        margin: 12px auto 0;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-top-contact-button {
        width: 100%;
        font-size: 14px;
        padding: 12px 0;
    }
}

.lp-nada-top-contact-button br {
    display: none;
}

@media screen and (max-width: 768px) {
    .lp-nada-top-contact-button br {
        display: block;
    }
}

.lp-nada-top-triangle {
    width: 100%;
    height: auto;
    fill: #d4f4ff;
    transform: translateY(-1px);
    background: #fff;
}

.lp-nada-offer {
    position: relative;
    top: -2px;
    background: #fff;
    padding: 80px 48px;
}

@media screen and (max-width: 768px) {
    .lp-nada-offer {
        padding: 80px 24px;
    }
}

.lp-nada-offer-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

.lp-nada-offer-container h2 {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 960px) {
    .lp-nada-offer-container h2 {
        font-size: 20px;
    }
}

.lp-nada-offer-container h3 {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 960px) {
    .lp-nada-offer-container h3 {
        font-size: 20px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-container h3 {
        font-size: 16px;
    }
}

.lp-nada-offer-container h3 span {
    color: #15a1d6;
}

.lp-nada-offer-heading {
    font-size: 24px;
    font-weight: 700;
    color: #a8dcf0;
}

.lp-nada-offer-worries {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 20px;
    column-gap: 24px;
    margin: 64px 0;
    transition: all 0.5s;
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-worries {
        row-gap: 12px;
        column-gap: 12px;
        margin: 48px 0;
    }
}

.lp-nada-offer-worries p {
    background: #faf8f4;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    padding: 12px 24px;
}

@media screen and (max-width: 960px) {
    .lp-nada-offer-worries p {
        font-size: 14px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-worries p {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 12px 0;
        width: calc(50% - 12px);
        min-height: 7.125em;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-worries p {
        font-size: 12px;
        border-radius: 8px;
    }
}

.lp-nada-offer-image {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
}

.lp-nada-offer-image picture {
    width: 100px;
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-image picture {
        width: 80px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-image picture {
        width: 60px;
    }
}

.lp-nada-offer-image picture:first-of-type {
    position: absolute;
    top: 25%;
    left: calc(10% - 50px);
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-image picture:first-of-type {
        left: calc(10% - 40px);
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-image picture:first-of-type {
        left: calc(10% - 30px);
    }
}

.lp-nada-offer-image picture:nth-of-type(2) {
    position: absolute;
    top: 50%;
    left: calc(22.5% - 50px);
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-image picture:nth-of-type(2) {
        left: calc(22.5% - 40px);
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-image picture:nth-of-type(2) {
        left: calc(22.5% - 30px);
    }
}

.lp-nada-offer-image picture:nth-of-type(3) {
    position: absolute;
    top: 10%;
    left: calc(35% - 50px);
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-image picture:nth-of-type(3) {
        left: calc(35% - 40px);
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-image picture:nth-of-type(3) {
        left: calc(35% - 30px);
    }
}

.lp-nada-offer-image picture:nth-of-type(4) {
    position: absolute;
    top: 10%;
    right: calc(35% - 50px);
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-image picture:nth-of-type(4) {
        right: calc(35% - 40px);
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-image picture:nth-of-type(4) {
        right: calc(35% - 30px);
    }
}

.lp-nada-offer-image picture:nth-of-type(5) {
    position: absolute;
    top: 50%;
    right: calc(22.5% - 50px);
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-image picture:nth-of-type(5) {
        right: calc(22.5% - 40px);
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-image picture:nth-of-type(5) {
        right: calc(22.5% - 30px);
    }
}

.lp-nada-offer-image picture:nth-of-type(6) {
    position: absolute;
    top: 25%;
    right: calc(10% - 50px);
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-image picture:nth-of-type(6) {
        right: calc(10% - 40px);
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-image picture:nth-of-type(6) {
        right: calc(10% - 30px);
    }
}

.lp-nada-offer-image-ship {
    position: relative;
    z-index: 2;
    width: 120px;
    margin: 48px 0;
}

@media screen and (max-width: 768px) {
    .lp-nada-offer-image-ship {
        width: 100px;
        margin: 64px 0 32px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-offer-image-ship {
        margin: 80px 0 40px;
    }
}

.lp-nada-about {
    width: 100%;
    padding: 120px 0;
}

.lp-nada-about-header {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 40px;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-header {
        padding: 0 24px;
    }
}

.lp-nada-about-header h2 {
    font-size: 24px;
    font-weight: 700;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-header h2 {
        font-size: 20px;
    }
}

.lp-nada-about-heading {
    font-size: 24px;
    font-weight: 700;
    color: #a8dcf0;
}

.lp-nada-about-header-description {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    margin-top: 20px;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-header-description {
        font-size: 14px;
    }
}

.lp-nada-about-header-description span {
    font-weight: 700;
}

.lp-nada-about-header-image {
    width: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    background: #fff;
    border-radius: 16px;
    border: 2px solid #f5f5f5;
    padding: 48px;
    margin: 40px 0 20px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-header-image {
        width: 80%;
        flex-direction: column;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-header-image {
        width: 100%;
        padding: 48px 24px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-header-image {
        padding: 16px;
    }
}

.lp-nada-about-header-image-contents {
    width: 30%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-header-image-contents {
        width: 40%;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-header-image-contents {
        width: 60%;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-header-image-contents {
        width: 80%;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-header-image-contents {
        width: 100%;
    }
}

.lp-nada-about-header-image-contents img {
    width: 100%;
    aspect-ratio: 5 / 4;
    object-fit: cover;
    border-radius: 8px;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-header-image-contents img {
        border-radius: 8px;
    }
}

.lp-nada-about-header-image-contents p {
    font-size: 14px;
    font-weight: 500;
    text-align: center;
}

.lp-nada-about-header-image-arrow {
    position: relative;
    width: 30%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-header-image-arrow {
        width: 100%;
        flex-direction: row-reverse;
        justify-content: center;
    }
}

.lp-nada-about-header-image-arrow p {
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    color: #fff;
    background: #19ba6a;
    border-radius: 8px;
    padding: 8px 16px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-header-image-arrow p {
        font-size: 12px;
    }

    .lp-nada-about-header-image-arrow p:last-of-type {
        position: absolute;
        left: calc(50% - 310px);
    }

    .lp-nada-about-header-image-arrow p:nth-last-of-type(2) {
        position: absolute;
        right: calc(50% - 280px);
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-header-image-arrow p:last-of-type {
        left: calc(50% - 220px);
    }

    .lp-nada-about-header-image-arrow p:nth-last-of-type(2) {
        right: calc(50% - 220px);
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-header-image-arrow p:last-of-type {
        left: calc(50% - 190px);
    }

    .lp-nada-about-header-image-arrow p:nth-last-of-type(2) {
        right: calc(50% - 190px);
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-header-image-arrow p:last-of-type {
        left: calc(50% - 160px);
        bottom: -40px;
    }

    .lp-nada-about-header-image-arrow p:nth-last-of-type(2) {
        right: calc(50% - 160px);
        top: 10px;
    }
}

.lp-nada-about-header-image-arrow img {
    width: 120px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-header-image-arrow img {
        width: 100px;
        rotate: 90deg;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-header-image-arrow img {
        margin: 24px 0;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-header-image-arrow img {
        width: 64px;
        margin: 32px 0;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-header-image-arrow img {
        margin: 72px 0 40px;
    }
}

.lp-nada-about-it-ryoiku {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 0 120px;
    margin-top: 80px;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-it-ryoiku {
        padding: 0 64px;
        margin-top: 64px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-it-ryoiku {
        padding: 0 32px;
    }
}

.lp-nada-about-it-ryoiku h3 {
    font-size: 24px;
    font-weight: 700;
    color: #15a1d6;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-it-ryoiku h3 {
        font-size: 20px;
    }
}

.lp-nada-about-it-ryoiku p {
    font-size: 16px;
    font-weight: 500;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-it-ryoiku p {
        font-size: 14px;
    }
}

.lp-nada-about-it-ryoiku-kyosan {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 0 24px;
    margin-top: 40px;
}

.lp-nada-about-it-ryoiku-kyosan h4 {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    color: #19ba6a;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-it-ryoiku-kyosan h4 {
        font-size: 16px;
    }
}

.lp-nada-about-it-ryoiku-kyosan-teachers {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.lp-nada-about-it-ryoiku-kyosan-teacher {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    background: #fff;
    border-radius: 16px;
    border: 2px solid #f5f5f5;
    padding: 32px;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-it-ryoiku-kyosan-teacher {
        width: 100%;
        gap: 24px;
        flex-direction: column;
        padding: 24px;
    }
}

.lp-nada-about-it-ryoiku-kyosan-teacher > div {
    flex: 1;
    display: flex;
    gap: 20px;
}

.lp-nada-about-it-ryoiku-kyosan-teacher > p {
    flex-grow: 1;
    font-size: 18px;
    line-height: 1.4;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-it-ryoiku-kyosan-teacher > p {
        font-size: 16px;
    }
}

.lp-nada-about-it-ryoiku-kyosan-teacher-img {
    display: flex;
    align-items: center;
}

.lp-nada-about-it-ryoiku-kyosan-teacher-img img {
    width: 160px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    object-fit: cover;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-it-ryoiku-kyosan-teacher-img img {
        width: 120px;
    }
}

.lp-nada-about-it-ryoiku-kyosan-teacher-text {
    width: 320px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-it-ryoiku-kyosan-teacher-text {
        width: 100%;
    }
}

.lp-nada-about-it-ryoiku-kyosan-teacher-text p {
    font-size: 16px;
    line-height: 1.4;
}

.lp-nada-about-it-ryoiku-kyosan-teacher-text p:first-of-type {
    font-weight: 700;
    margin-bottom: 8px;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-it-ryoiku-kyosan-teacher-text p {
        font-size: 14px;
    }
}

.lp-nada-about-point-head span {
    font-size: 24px;
    font-weight: 700;
    color: #a8dcf0;
}

.lp-nada-about-point-head.one {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 12px;
}

.lp-nada-about-point-head.two {
    margin-left: calc(50% - 540px);
    margin-bottom: 12px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-head.two {
        margin-left: 128px;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-head.two {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-left: 0;
        text-align: center;
    }
}

.lp-nada-about-point-head.two span {
    margin-left: 48px;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-head.two span {
        margin-left: 0;
    }
}

.lp-nada-about-point-head.three {
    margin-left: calc(50% - 120px);
    margin-bottom: 12px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-head.three {
        margin-left: calc(50% - 360px);
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-head.three {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-left: 0;
        text-align: center;
    }
}

.lp-nada-about-point-head.three span {
    margin-left: 48px;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-head.three span {
        margin-left: 0;
    }
}

.lp-nada-about-point-heading {
    display: flex;
    align-items: center;
    gap: 16px;
}

@media screen and (max-width: 428px) {
    .lp-nada-about-point-heading {
        flex-direction: column;
    }
}

.lp-nada-about-point-heading h2 {
    font-size: 20px;
    font-weight: 700;
}

.lp-nada-about-point-heading div {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    min-width: 32px;
    height: 32px;
    font-size: 24px;
    font-weight: 700;
    line-height: 0.5;
    text-align: center;
    color: #fff;
    background: #15a1d6;
    border-radius: 50%;
}

.lp-nada-about-point-one-bg-area {
    width: calc(50% + 420px);
    margin-left: auto;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-one-bg-area {
        width: calc(100% - 24px);
    }
}

.lp-nada-about-point-one-bg-container {
    width: 100%;
}

.lp-nada-about-point-one-bg-contents {
    width: 100%;
    background: #d4f4ff;
    border-radius: 24px 0 0 24px;
    padding: 80px 48px 200px;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-one-bg-contents {
        padding: 48px 48px 170px;
    }
}

.lp-nada-about-point-one-bg-contents div {
    width: 900px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-one-bg-contents div {
        width: 100%;
    }
}

.lp-nada-about-point-one-bg-contents div p {
    font-size: 16px;
    font-weight: 500;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-one-bg-contents div p {
        font-size: 14px;
    }
}

.lp-nada-about-point-one-bg-out-contents {
    position: relative;
    top: -140px;
    left: calc(-50% + 430px);
    display: flex;
    max-width: 1280px;
    margin: 0 auto;
    gap: 8%;
    padding: 0 48px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-one-bg-out-contents {
        left: calc(-50% + 410px);
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-one-bg-out-contents {
        left: 0;
        gap: 16px;
        padding: 0 48px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-point-one-bg-out-contents {
        flex-direction: column;
    }
}

.lp-nada-about-point-one-bg-out-contents-item {
    width: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-one-bg-out-contents-item {
        width: 30%;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-one-bg-out-contents-item {
        width: 32%;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-point-one-bg-out-contents-item {
        width: calc(100% - 24px);
    }
}

.lp-nada-about-point-one-bg-out-contents-item div {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-point-one-bg-out-contents-item div {
        width: 80%;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-point-one-bg-out-contents-item div {
        width: 110%;
    }
}

.lp-nada-about-point-one-bg-out-contents-item div img {
    width: 100%;
    aspect-ratio: 5 / 4;
    object-fit: cover;
    border-radius: 16px;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-one-bg-out-contents-item div img {
        border-radius: 12px;
    }
}

.lp-nada-about-point-one-bg-out-contents-item ul {
    list-style: square;
}

.lp-nada-about-point-one-bg-out-contents-item ul li {
    font-size: 16px;
    font-weight: 500;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-one-bg-out-contents-item ul li {
        font-size: 14px;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-one-bg-out-contents-item ul li {
        font-size: 12px;
    }
}

.lp-nada-about-point-one-bg-out-contents-item p {
    font-size: 16px;
    font-weight: 500;
    padding: 0 12px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-one-bg-out-contents-item p {
        font-size: 14px;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-one-bg-out-contents-item p {
        font-size: 12px;
    }
}

.lp-nada-about-point-two-bg-area {
    width: 100%;
    position: relative;
}

.lp-nada-about-point-two-image {
    position: absolute;
    top: -120px;
    right: calc(50% - 600px);
    width: 400px;
    aspect-ratio: 5 / 3;
    object-fit: cover;
    border-radius: 16px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-two-image {
        aspect-ratio: 5 / 3;
        width: 360px;
        right: 128px;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-two-image {
        top: 32px;
        right: 64px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-point-two-image {
        width: calc(100% - 120px);
    }
}

.lp-nada-about-point-two-bg-container {
    width: calc(50% + 520px);
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-two-bg-container {
        width: calc(100% - 80px);
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-two-bg-container {
        width: calc(100% - 24px);
    }
}

.lp-nada-about-point-two-bg-contents {
    width: 100%;
    background: #d4f4ff;
    border-radius: 0 24px 24px 0;
    padding: 80px 360px 80px 0;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-two-bg-contents {
        padding: 120px 48px 80px;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-two-bg-contents {
        padding: 280px 48px 80px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-point-two-bg-contents {
        padding: 60% 48px 80px;
    }
}

.lp-nada-about-point-two-bg-contents div {
    width: 700px;
    margin-left: auto;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-two-bg-contents div {
        width: auto;
        margin-left: 80px;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-two-bg-contents div {
        margin-left: 24px;
    }
}

.lp-nada-about-point-two-bg-contents div p {
    font-size: 16px;
    font-weight: 500;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-two-bg-contents div p {
        font-size: 14px;
    }
}

.lp-nada-about-point-three-bg-area {
    width: calc(50% + 420px);
    margin-left: auto;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-three-bg-area {
        width: calc(100% - 24px);
    }
}

.lp-nada-about-point-three-bg-container {
    width: 100%;
}

.lp-nada-about-point-three-bg-contents {
    position: relative;
    width: 100%;
    background: #d4f4ff;
    border-radius: 24px 0 0 24px;
    padding: 80px 48px 200px 300px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-three-bg-contents {
        padding: 120px 48px 170px;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-three-bg-contents {
        padding: 32px 48px 170px;
    }
}

.lp-nada-about-point-three-bg-contents div {
    width: 680px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-three-bg-contents div {
        width: 100%;
    }
}

.lp-nada-about-point-three-bg-contents div p {
    font-size: 16px;
    font-weight: 500;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-three-bg-contents div p {
        font-size: 14px;
    }
}

.lp-nada-about-point-three-image {
    position: absolute;
    top: -120px;
    left: -140px;
    width: 400px;
    aspect-ratio: 5 / 3;
    object-fit: cover;
    border-radius: 16px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-about-point-three-image {
        left: auto;
        right: 120px;
        width: 360px;
    }
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-three-image {
        position: static;
        margin-bottom: 16px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-point-three-image {
        width: 100%;
    }
}

.lp-nada-about-point-one {
    margin-top: 140px;
}

.lp-nada-about-point-two {
    position: relative;
    margin-top: 20px;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-two {
        margin-top: 0;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-point-two {
        top: -40px;
    }
}

.lp-nada-about-point-three {
    margin-top: 160px;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-point-three {
        margin-top: 120px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-point-three {
        margin-top: 80px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-point-three {
        margin-top: 60px;
    }
}

.lp-nada-about-safety {
    width: calc(100% - 48px);
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #d4f4ff;
    border-radius: 16px;
    border: 2px solid #fff;
    padding: 48px 32px 64px;
    margin: 0 auto;
}

.lp-nada-about-safety h2 {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-safety h2 {
        font-size: 20px;
    }
}

.lp-nada-about-safety span {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    text-align: center;
}

.lp-nada-about-safety p {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    margin: 24px 0 48px;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-safety p {
        font-size: 14px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-safety p {
        font-size: 12px;
    }
}

.lp-nada-about-safety-contents {
    display: flex;
    justify-content: space-around;
    align-items: stretch;
    width: 100%;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-safety-contents {
        flex-direction: column;
        align-items: center;
        gap: 24px;
    }
}

.lp-nada-about-safety-contents div {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 16%;
}

@media screen and (max-width: 960px) {
    .lp-nada-about-safety-contents div {
        width: 28%;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-about-safety-contents div {
        width: 100%;
    }
}

.lp-nada-about-safety-contents div picture {
    width: 80%;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-safety-contents div picture {
        width: 40%;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-about-safety-contents div picture {
        width: 48%;
    }
}

.lp-nada-about-safety-contents div picture img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 50%;
    border: 2px solid #fff;
}

.lp-nada-about-safety-contents div ul {
    list-style: square;
    margin-top: 16px;
}

.lp-nada-about-safety-contents div ul li {
    font-size: 16px;
}

@media screen and (max-width: 768px) {
    .lp-nada-about-safety-contents div ul li {
        font-size: 14px;
    }
}

#flow {
    font-size: 16px;
}

@media screen and (max-width: 768px) {
    #flow {
        font-size: 14px;
    }
}

@media screen and (max-width: 428px) {
    #flow {
        font-size: 12px;
    }
}

#flow button {
    font-size: 16px;
}

@media screen and (max-width: 768px) {
    #flow button {
        font-size: 14px;
    }
}

@media screen and (max-width: 428px) {
    #flow button {
        font-size: 12px;
    }
}

#flow .wrapper {
    padding-top: 80px;
    padding-bottom: 120px;
    position: relative;
    margin-top: -10px;
    width: 100%;
    background-color: #a8dcf0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #flow .wrapper {
        padding-top: 65px;
        padding-bottom: 80px;
    }
}

@media only screen and (max-width: 767px) {
    #flow .wrapper {
        margin-top: calc(-10vw / 3.75);
        padding-top: calc(70vw / 3.75);
        padding-bottom: calc(40vw / 3.75);
    }
}

#flow .wrapper > div {
    width: 95%;
    max-width: 1120px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #flow .wrapper > div {
        width: 91%;
    }
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div {
        width: 91%;
    }
}

#flow .wrapper > div .title {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#flow .wrapper > div .title h2 {
    font-size: 24px;
    font-weight: 700;
}

@media screen and (max-width: 960px) {
    #flow .wrapper > div .title h2 {
        font-size: 20px;
    }
}

#flow .wrapper > div .title span {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
}

#flow .wrapper > div .tab-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#flow .wrapper > div .tab-menu > div {
    width: 100%;
    max-width: 760px;
    padding: 17px 20px;
    border-radius: 150px;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #flow .wrapper > div .tab-menu > div {
        width: 84%;
    }
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .tab-menu > div {
        padding: calc(8vw / 3.75) calc(10vw / 3.75);
        margin-top: calc(40vw / 3.75);
        width: 98%;
    }
}

#flow .wrapper > div .tab-menu > div button {
    width: 49%;
    text-align: center;
    padding: 10px 0;
    border-radius: 150px;
    color: #15a1d6;
    transition: all 0.1s ease-in;
    font-weight: 700;
}

#flow .wrapper > div .tab-menu > div button.active {
    color: #fff;
    background-color: #15a1d6;
}

#flow .wrapper > div .tab-menu > div button.active:hover {
    opacity: 1;
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .tab-menu > div button {
        padding: calc(15vw / 3.75) 0;
        line-height: 1.4;
    }

    #flow .wrapper > div .annotation {
        margin-top: calc(27vw / 3.75);
    }
}

#flow .wrapper > div .schedule-table {
    padding: 30px;
    background-color: #fff;
    display: flex;
    flex-wrap: wrap;
    border-radius: 20px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #flow .wrapper > div .schedule-table {
        padding: 30px 20px;
    }
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table {
        margin-top: calc(30vw / 3.75);
        padding: calc(20vw / 3.75) 20px;
    }
}

#flow .wrapper > div .schedule-table .column {
    padding: 20px;
    text-align: left;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #flow .wrapper > div .schedule-table .column {
        padding: 10px 12px 10px 3px;
    }
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column {
        padding: calc(15vw / 3.75) calc(4vw / 3.75);
    }
}

#flow .wrapper > div .schedule-table .column .timeline li {
    display: flex;
    justify-content: space-between;
    height: 80px;
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column .timeline li {
        height: calc(63vw / 3.75);
    }
}

#flow .wrapper > div .schedule-table .column .timeline li.image-row {
    height: 140px;
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column .timeline li.image-row {
        height: calc(111.5vw / 3.75);
    }
}

#flow .wrapper > div .schedule-table .column .timeline li.big-image-row {
    height: 170px;
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column .timeline li.big-image-row {
        height: calc(130vw / 3.75);
    }
}

#flow .wrapper > div .schedule-table .column .timeline li .time {
    width: 20%;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column .timeline li .time {
        width: 30%;
    }
}

#flow .wrapper > div .schedule-table .column .timeline li .time:after {
    content: "";
    width: 2px;
    height: 100%;
    background-color: var(--colorDeepGreen);
    position: absolute;
    top: 0;
    right: 0;
}

#flow .wrapper > div .schedule-table .column .timeline li .time:before {
    content: "";
    width: 15px;
    height: 15px;
    background: var(--colorDeepGreen);
    border-radius: 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: -6.5px;
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column .timeline li .time:before {
        right: -3px;
        width: 8px;
        height: 8px;
    }
}

#flow .wrapper > div .schedule-table .column .timeline li .activity {
    width: 80%;
    font-weight: 700;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    letter-spacing: 1;
}

#flow .wrapper > div .schedule-table .column .timeline li .activity picture {
    display: inline-flex;
    justify-content: center;
}

@media only screen and (min-width: 1025px) {
    #flow .wrapper > div .schedule-table .column .timeline li .activity picture {
        max-width: 42%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #flow .wrapper > div .schedule-table .column .timeline li .activity picture {
        max-width: 42%;
    }
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column .timeline li .activity picture {
        max-width: 100%;
    }

    #flow .wrapper > div .schedule-table .column .timeline li .activity {
        width: 70%;
        padding: calc(13vw / 3.75) calc(11vw / 3.75);
    }

    #flow .wrapper > div .schedule-table .column .timeline li .activity img {
        margin-top: calc(6vw / 3.75);
    }
}

#flow .wrapper > div .schedule-table .column .timeline li:first-child > .time:after {
    bottom: 0;
    top: inherit;
    height: 50%;
}

#flow .wrapper > div .schedule-table .column .timeline li:last-child > .time:after {
    height: 50%;
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column .timeline li:last-child.image-row .activity {
        padding-bottom: calc(30vw / 3.75);
    }
}

#flow .wrapper > div .schedule-table .column .timeline.right-aria li {
    flex-direction: row-reverse;
}

#flow .wrapper > div .schedule-table .column .timeline.right-aria li .time:after {
    right: inherit;
    left: 0;
}

#flow .wrapper > div .schedule-table .column .timeline.right-aria li .time:before {
    left: -6.5px;
    right: inherit;
}

@media only screen and (max-width: 767px) {
    #flow .wrapper > div .schedule-table .column .timeline.right-aria li .time:before {
        left: -3px;
    }
}

#flow .wrapper > div .schedule-table .column .timeline.blue li .time:after,
#flow .wrapper > div .schedule-table .column .timeline.blue li .time:before {
    background: var(--colorRoyalBlue);
}

.lp-nada-guide {
    width: 100%;
    background: #fff;
    padding: 80px 0 120px;
}

@media screen and (max-width: 768px) {
    .lp-nada-guide {
        padding: 48px 0 80px;
    }
}

.lp-nada-guide-container {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .lp-nada-guide-container {
        padding: 0 64px;
        align-items: flex-start;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-guide-container {
        align-items: flex-start;
        padding: 0 24px;
    }
}

.lp-nada-guide-heading {
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .lp-nada-guide-heading {
        align-items: flex-start;
    }
}

.lp-nada-guide-heading h2 {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 960px) {
    .lp-nada-guide-heading h2 {
        font-size: 20px;
    }
}

.lp-nada-guide-heading span {
    font-size: 24px;
    font-weight: 700;
    color: #a8dcf0;
    text-align: center;
}

.lp-nada-guide-contents {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    margin-top: 64px;
}

@media screen and (max-width: 768px) {
    .lp-nada-guide-contents {
        align-items: flex-start;
        gap: 24px;
        margin-top: 32px;
    }
}

.lp-nada-guide-contents img {
    width: 48px;
    height: 48px;
}

@media screen and (max-width: 768px) {
    .lp-nada-guide-contents img {
        margin: 0 auto;
    }
}

.lp-nada-guide-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
}

@media screen and (max-width: 1280px) {
    .lp-nada-guide-item {
        gap: 24px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-guide-item {
        align-items: flex-start;
    }
}

.lp-nada-guide-item p {
    font-size: 16px;
    font-weight: 500;
    text-align: center;
}

@media screen and (max-width: 1280px) {
    .lp-nada-guide-item p {
        font-size: 14px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-guide-item p {
        text-align: left;
    }
}

.lp-nada-guide-title {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
}

@media screen and (max-width: 768px) {
    .lp-nada-guide-title {
        flex-direction: column;
        align-items: flex-start;
    }
}

.lp-nada-guide-title span {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    background: #15a1d6;
    border-radius: 50%;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
    text-align: center;
    line-height: 0.5;
}

@media screen and (max-width: 1280px) {
    .lp-nada-guide-title span {
        font-size: 16px;
    }
}

.lp-nada-guide-title h3 {
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 1280px) {
    .lp-nada-guide-title h3 {
        font-size: 16px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-guide-title h3 {
        text-align: left;
    }
}

.lp-nun-guide-contact-button {
    display: inline-flex;
    background: #15a1d6;
    border-radius: 12px;
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    color: #fff;
    padding: 16px 128px;
    margin: 64px auto 0;
}

@media screen and (max-width: 960px) {
    .lp-nun-guide-contact-button {
        font-size: 16px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nun-guide-contact-button {
        padding: 16px 48px;
    }
}

.lp-nada-price {
    width: 100%;
    background: #d4f4ff;
    padding: 100px 0 120px;
}

@media screen and (max-width: 768px) {
    .lp-nada-price {
        padding: 64px 0 80px;
    }
}

.lp-nada-price-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    background: #fff;
    border-radius: 16px;
    padding: 40px 80px 64px;
    margin: 0 64px;
}

@media screen and (max-width: 768px) {
    .lp-nada-price-container {
        padding: 40px 48px 64px;
        margin: 0 32px;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-price-container {
        padding: 40px 24px 64px;
        margin: 0 24px;
    }
}

.lp-nada-price-heading {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.lp-nada-price-heading h2 {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 960px) {
    .lp-nada-price-heading h2 {
        font-size: 20px;
    }
}

.lp-nada-price-heading span {
    font-size: 24px;
    font-weight: 700;
    color: #a8dcf0;
    text-align: center;
}

.lp-nada-price-description {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.lp-nada-price-description p {
    font-size: 16px;
    font-weight: 500;
}

@media screen and (max-width: 1280px) {
    .lp-nada-price-description p {
        font-size: 14px;
    }
}

.lp-nada-price-contents {
    display: flex;
    justify-content: center;
    gap: 16px;
}

@media screen and (max-width: 960px) {
    .lp-nada-price-contents {
        flex-wrap: wrap;
    }
}

.lp-nada-price-contents .lp-nada-price-item {
    display: flex;
    flex-direction: column;
}

@media screen and (max-width: 960px) {
    .lp-nada-price-contents .lp-nada-price-item {
        flex-direction: row;
    }
}

@media screen and (max-width: 428px) {
    .lp-nada-price-contents .lp-nada-price-item {
        width: 100%;
    }
}

.lp-nada-price-contents .lp-nada-price-item .top {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 120px;
    width: 152px;
    background: #d4f4ff;
}

@media screen and (max-width: 428px) {
    .lp-nada-price-contents .lp-nada-price-item .top {
        width: 50%;
    }
}

.lp-nada-price-contents .lp-nada-price-item .top p {
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    line-height: 1.4;
    margin-bottom: 8px;
}

.lp-nada-price-contents .lp-nada-price-item .top span {
    font-size: 12px;
    font-weight: 400;
    text-align: center;
    line-height: 1.4;
}

.lp-nada-price-contents .lp-nada-price-item .under {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 120px;
    width: 152px;
    background: #f5f5f5;
}

@media screen and (max-width: 428px) {
    .lp-nada-price-contents .lp-nada-price-item .under {
        width: 50%;
    }
}

.lp-nada-price-contents .lp-nada-price-item .under p {
    font-size: 14px;
    font-weight: 400;
    text-align: center;
}

.lp-nada-price-contents .lp-nada-price-item .under span {
    font-size: 24px;
    font-weight: 700;
    margin-right: 4px;
}

@media screen and (max-width: 428px) {
    .lp-nada-price-contents .lp-nada-price-item .under span {
        font-size: 20px;
    }
}

#access {
    padding: 80px 0 120px;
}

@media screen and (max-width: 768px) {
    #access {
        padding: 64px 0 80px;
    }
}

#access .wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

#access .wrapper > div {
    width: 95%;
    max-width: 1120px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div {
        width: 91%;
    }
}

@media only screen and (max-width: 767px) {
    #access .wrapper > div {
        width: 90%;
    }
}

#access .wrapper > div .title {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#access .wrapper > div .title h2 {
    font-size: 24px;
    font-weight: 700;
}

@media screen and (max-width: 960px) {
    #access .wrapper > div .title h2 {
        font-size: 20px;
    }
}

#access .wrapper > div .title span {
    font-size: 24px;
    font-weight: 700;
    color: #a8dcf0;
}

#access .wrapper > div .infomation {
    background-color: #fff;
    border-radius: 8px;
}

#access .wrapper > div .infomation h3 {
    font-size: 16px;
    font-weight: 700;
    margin-top: 16px;
}

@media screen and (max-width: 960px) {
    #access .wrapper > div .infomation h3 {
        font-size: 14px;
    }
}

#access .wrapper > div .infomation p {
    font-size: 16px;
    font-weight: 500;
    margin-top: 16px;
}

@media screen and (max-width: 960px) {
    #access .wrapper > div .infomation p {
        font-size: 14px;
    }
}

#access .wrapper > div .infomation .upper {
    padding: 40px 40px 25px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media only screen and (max-width: 767px) {
    #access .wrapper > div .infomation .upper {
        padding: calc(45vw / 3.75) calc(25vw / 3.75) 0;
    }
}

#access .wrapper > div .infomation .upper .images {
    width: 47%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .upper .images {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    #access .wrapper > div .infomation .upper .images {
        width: 100%;
    }
}

#access .wrapper > div .infomation .upper .images .selection {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 100%;
}

#access .wrapper > div .infomation .upper .images .selection::-webkit-scrollbar {
    display: none;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .upper .images .selection {
        width: 20%;
        flex-wrap: wrap;
        align-content: space-between;
    }
}

#access .wrapper > div .infomation .upper .images .selection button {
    width: 23%;
    aspect-ratio: 16 / 10;
    background-color: #faf8f4;
    position: relative;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .upper .images .selection button {
        width: auto;
        height: 23%;
    }
}

#access .wrapper > div .infomation .upper .images .selection button img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

#access .wrapper > div .infomation .upper .images .selection button:after {
    content: "";
    width: 0;
    height: 5px;
    border-radius: 2px;
    background: #15a1d6;
    position: absolute;
    bottom: -7px;
    left: 0;
    right: 0;
    margin: auto;
    transition: width 0.1s ease-in, height 0.1s ease-in;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .upper .images .selection button:after {
        left: inherit;
        right: -20px;
        bottom: 0;
        top: 0;
        width: 5px;
        height: 0;
    }
}

#access .wrapper > div .infomation .upper .images .selection button.active:after {
    width: 100%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .upper .images .selection button.active:after {
        width: 5px;
        height: 100%;
    }
}

#access .wrapper > div .infomation .upper .map {
    width: 47%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .upper .map {
        width: 100%;
        margin-top: 20px;
    }
}

@media only screen and (max-width: 767px) {
    #access .wrapper > div .infomation .upper .map {
        width: 100%;
        margin-top: calc(28vw / 1.75);
    }
}

#access .wrapper > div .infomation .under {
    padding: 0 40px 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .under {
        padding-bottom: 45px;
    }
}

@media only screen and (max-width: 767px) {
    #access .wrapper > div .infomation .under {
        margin-top: calc(30vw / 3.75);
        padding-bottom: 45px;
    }

    #access .wrapper > div .infomation .under .MuiTypography-body2 {
        font-size: calc(14vw / 3.75);
    }
}

#access .wrapper > div .infomation .under .left-aria {
    width: 47%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .under .left-aria {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    #access .wrapper > div .infomation .under .left-aria {
        width: 100%;
    }
}

#access .wrapper > div .infomation .under .right-aria {
    width: 47%;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #access .wrapper > div .infomation .under .right-aria {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    #access .wrapper > div .infomation .under .right-aria {
        width: 100%;
    }
}

#access .wrapper > div .infomation .under .recruitment-button {
    font-size: 14px;
    border: 1px solid var(--colorMediumGreen);
    padding: 10px 25px;
    border-radius: 30px;
    background-color: var(--colorWhite);
}

@media only screen and (max-width: 767px) {
    #access .wrapper > div .infomation .under .recruitment-button {
        display: flex;
        padding: 0;
        width: calc(228vw / 3.75);
        height: calc(40vw / 3.75);
        justify-content: center;
        align-items: center;
        font-size: calc(12vw / 3.75);
    }

    #access .wrapper > div .infomation .under .recruitment-button img {
        width: calc(12vw / 3.75) !important;
        margin-right: 0;
    }
}

.lp-nada-contact {
    width: 100%;
    background: #fff;
    padding: 80px 48px 120px;
}

@media screen and (max-width: 768px) {
    .lp-nada-contact {
        padding: 48px 24px 80px;
    }
}

.lp-nada-contact-container {
    width: 100%;
    display: flex;
    background: #faf8f4;
    border-radius: 16px;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    padding: 80px;
}

@media screen and (max-width: 960px) {
    .lp-nada-contact-container {
        padding: 48px 32px;
    }
}

@media screen and (max-width: 768px) {
    .lp-nada-contact-container {
        padding: 32px 24px;
    }
}

.lp-nada-contact-container p {
    font-size: 16px;
    font-weight: 500;
}

@media screen and (max-width: 960px) {
    .lp-nada-contact-container p {
        font-size: 14px;
    }
}

.lp-nada-contact-heading {
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .lp-nada-contact-heading {
        align-items: flex-start;
    }
}

.lp-nada-contact-heading h2 {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}

@media screen and (max-width: 960px) {
    .lp-nada-contact-heading h2 {
        font-size: 20px;
    }
}

.lp-nada-contact-heading span {
    font-size: 24px;
    font-weight: 700;
    color: #a8dcf0;
    text-align: center;
    line-height: 1.2;
}

.lp-nada-contact-contents {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.lp-nada-contact-contents input[type='submit'] {
    display: flex;
    justify-content: center;
    background: #15a1d6;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    padding: 16px 32px;
    cursor: pointer;
}

@media screen and (max-width: 960px) {
    .lp-nada-contact-contents input[type='submit'] {
        font-size: 14px;
    }
}

.lp-nada-contact-item {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 16px;
}

@media screen and (max-width: 960px) {
    .lp-nada-contact-item {
        font-size: 14px;
    }
}

.lp-nada-contact-item input {
    width: 100%;
    background: #fff;
    border: 2px solid #f5f5f5;
    border-radius: 8px;
    outline: none;
    font-size: 16px;
    padding: 8px 16px;
}

@media screen and (max-width: 960px) {
    .lp-nada-contact-item input {
        font-size: 14px;
        padding: 6px 12px;
    }
}

.lp-nada-contact-item input:focus {
    border: 2px solid #15a1d6;
}

.lp-nada-contact-item input::placeholder {
    color: #bbb;
}

.lp-nada-contact-item .select-block {
    width: 100%;
    position: relative;
}

.lp-nada-contact-item .select-block:after {
    content: "";
    position: absolute;
    top: calc(50% - 6px);
    right: 24px;
    width: 10px;
    height: 10px;
    border-right: 2px solid #333;
    border-bottom: 2px solid #333;
    transform: rotate(45deg);
    pointer-events: none;
}

.lp-nada-contact-item select {
    width: 100%;
    -webkit-appearance: none;
    appearance: none;
    background: #fff;
    border: 2px solid #f5f5f5;
    border-radius: 8px;
    outline: none;
    font-size: 16px;
    padding: 8px 16px;
}

@media screen and (max-width: 960px) {
    .lp-nada-contact-item select {
        font-size: 14px;
        padding: 6px 12px;
    }
}

.lp-nada-contact-item select:focus {
    border: 2px solid #15a1d6;
}

.lp-nada-contact-item select:invalid {
    color: #bbb;
}

.lp-nada-contact-item select option:first-child {
    color: #bbb;
}

.lp-nada-contact-item textarea {
    width: 100%;
    height: 20em;
    background: #fff;
    border: 2px solid #f5f5f5;
    border-radius: 8px;
    outline: none;
    font-size: 16px;
    padding: 8px 16px;
    resize: vertical;
}

@media screen and (max-width: 960px) {
    .lp-nada-contact-item textarea {
        font-size: 14px;
        padding: 6px 12px;
    }
}

.lp-nada-contact-item textarea:focus {
    border: 2px solid #15a1d6;
}

.lp-nada-contact-item textarea::placeholder {
    color: #bbb;
}

#company {
    padding: 120px 0 180px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #company {
        padding: 80px 0 120px;
    }
}

@media only screen and (max-width: 767px) {
    #company {
        padding: calc(85vw / 3.75) 0;
    }
}

#company .wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

#company .wrapper > div {
    width: 100%;
    max-width: 800px;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #company .wrapper > div {
        width: 90%;
    }
}

@media only screen and (max-width: 767px) {
    #company .wrapper > div {
        width: 90%;
    }
}

#company .wrapper > div .title {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#company .wrapper > div .title h2 {
    font-size: 24px;
    font-weight: 700;
}

@media screen and (max-width: 960px) {
    #company .wrapper > div .title h2 {
        font-size: 20px;
    }
}

#company .wrapper > div .title span {
    font-size: 24px;
    font-weight: 700;
    color: #a8dcf0;
}

#company .wrapper > div table {
    font-size: 16px;
}

@media screen and (max-width: 960px) {
    #company .wrapper > div table {
        font-size: 14px;
    }
}

#company .wrapper > div table tr {
    text-align: left;
}

#company .wrapper > div table tr th {
    width: 30%;
    padding: 20px 20px 20px 8%;
    font-weight: 700;
}

#company .wrapper > div table tr td {
    padding: 20px;
}

#company .wrapper > div table tr.second-line td,
#company .wrapper > div table tr.second-line th {
    padding-top: 0;
}

@media only screen and (max-width: 767px) {
    #company .wrapper > div table {
        margin-top: 32px;
    }

    #company .wrapper > div table tr th {
        width: 40%;
        padding: calc(22vw / 3.75) 0 calc(22vw / 3.75) 7%;
        font-weight: 700;
    }

    #company .wrapper > div table tr td {
        padding: calc(22vw / 3.75) 3%;
    }
}

.lp-nada-footer {
    width: 100%;
    background: #02253b;
    padding: 40px 48px;
}

.lp-nada-footer-container {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    color: #fff;
}

.lp-nada-footer-container span {
    font-size: 12px;
    font-weight: 400;
}

@media screen and (max-width: 768px) {
    .lp-nada-footer-container {
        flex-direction: column-reverse;
    }
}

.lp-nada-footer-space {
    width: 150px;
}

@media screen and (max-width: 768px) {
    .lp-nada-footer-space {
        display: none;
    }
}

.lp-nada-footer-links {
    align-self: flex-end;
    display: flex;
    align-items: center;
    gap: 24px;
    font-size: 14px;
}

.lp-nada-footer-links img {
    width: 40px;
}

.pc_navigation {
    position: fixed;
    background: var(--colorWhite);
    padding: 0 20px;
    width: 100%;
    height: 80px;
    top: 0;
    z-index: 1000;
    display: flex;
    justify-content: center;
    align-items: center;
    transform: translateY(-100%);
    opacity: 0;
    animation: slideDown 1s ease forwards, bgFade 0.5s ease forwards 1.5s;
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .pc_navigation {
        padding: 0 30px;
    }
}

@media only screen and (max-width: 767px) {
    .pc_navigation {
        transition: all 0.28s ease-out;
        padding: min(40vw / 3.75, 50px) min(20vw / 3.75, 30px);
    }

    .pc_navigation.smallnav {
        padding-top: min(30vw / 3.75, 40px);
        padding-bottom: min(30vw / 3.75, 40px);
    }
}

.pc_navigation > div {
    width: 100%;
    max-width: 1300px;
    display: flex;
    justify-content: space-between;
}

@media only screen and (max-width: 767px) {
    .pc_navigation > div .title {
        font-size: min(14vw / 3.75, 18px);
    }
}

.pc_navigation > div > a {
    font-size: 21px;
}

@media (min-width: 1141px) and (max-width: 1270px) {
    .pc_navigation > div > a {
        font-size: 18px;
    }
}

@media (min-width: 1071px) and (max-width: 1140px) {
    .pc_navigation > div > a {
        font-size: 16px;
    }
}

@media (min-width: 1024px) and (max-width: 1070px) {
    .pc_navigation > div > a {
        font-size: 14px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .pc_navigation > div > a {
        font-size: 18px;
    }
}

@media only screen and (max-width: 767px) {
    .pc_navigation > div > a {
        line-height: 1.5;
        font-size: calc(14vw / 3.75);
    }
}

.pc_navigation > div > ul {
    display: inline-flex;
    flex-wrap: wrap;
    align-content: center;
    gap: 0 20px;
    list-style: none;
    margin: 0;
}

@media only screen and (max-width: 767px) {
    .pc_navigation > div > ul {
        font-size: calc(14vw / 3.75);
    }
}

.pc_navigation > div > ul > a {
    position: relative;
    display: inline-block;
    overflow: hidden;
    font-size: 14px;
}

@media (min-width: 1024px) and (max-width: 1200px) {
    .pc_navigation > div > ul > a {
        font-size: 12px;
    }
}

.pc_navigation > div > ul > a:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: var(--colorForeground);
    transform: translateX(-100%);
    transition: transform 0.3s ease;
}

.pc_navigation > div > ul > a:hover:after {
    transform: translateX(0);
}

@media only screen and (max-width: 767px) {
    .sp_navigation .title {
        font-size: min(16vw / 3.75, 20px);
    }
}

.sp_navigation ul > a {
    margin-top: 25px;
    padding-bottom: 8px;
    border-bottom: 1px solid #000;
    display: block;
}

@media only screen and (max-width: 767px) {
    .sp_navigation ul > a p {
        font-size: min(14vw / 3.75, 18px);
    }
}

.sp_navigation > button {
    position: fixed;
    right: 24px;
    width: 30px;
    height: 22px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
    z-index: 1001;
    transition: all 0.28s ease-out;
}

.sp_navigation > button > div {
    height: 3px;
    width: 100%;
    background: #333;
    border-radius: 2px;
}

@media only screen and (max-width: 767px) {
    .sp_navigation > button {
        top: min(30vw / 3.75, 40px) !important;
    }

    .sp_navigation > button.smallnav {
        top: min(20vw / 3.75, 30px) !important;
    }
}

.sp_navigation > nav {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    background: hsla(0, 0%, 100%, 0.95);
    box-shadow: -4px 0 10px rgba(0, 0, 0, 0.2);
    border-bottom-left-radius: 9999px;
    border-bottom-right-radius: 9999px;
    border-top-left-radius: 9999px;
    border-top-right-radius: 0;
    z-index: 1000;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    transform: scale(0);
    opacity: 0;
    transform-origin: top right;
    transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out, border-radius 0.4s ease-in-out;
    pointer-events: none;
}

.sp_navigation.active > nav {
  transform: scale(1);
  border-radius: 0;
  opacity: 1;
  pointer-events: auto;
  transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out, border-radius 0.4s ease-in-out;
}

.sp_navigation > button {
  transition: transform 0.4s ease-in-out;
}

.sp_navigation > button div {
  transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;
}

.sp_navigation.active > button div:nth-child(1) {
  transform: translateY(10px) rotate(45deg);
}
.sp_navigation.active > button div:nth-child(2) {
  opacity: 0;
}
.sp_navigation.active > button div:nth-child(3) {
  transform: translateY(-10px) rotate(-45deg);
}

.menu-content {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  pointer-events: none;
}

.sp_navigation.active .menu-content {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.3s ease-in-out 0.4s;
  pointer-events: auto;
}

.sp_navigation .menu-content {
  transition: none;
}

:root {
  --swiper-theme-color: #007aff;
  --swiper-wrapper-transition-timing-function: initial;
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-bullet-width: var(--swiper-pagination-bullet-size, 8px);
  --swiper-pagination-bullet-height: var(--swiper-pagination-bullet-size, 8px);
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-right: 8px;
  --swiper-pagination-left: auto;
  --swiper-pagination-bullet-vertical-gap: 6px;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0, 0, 0, 0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-centered-offset-before: initial;
  --swiper-centered-offset-after: initial;
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translateZ(0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
  transform-style: preserve-3d;
}

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper:before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper:before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper:before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.5), transparent);
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5), transparent);
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5), transparent);
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), transparent);
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border-radius: 50%;
  border: 4px solid var(--swiper-preloader-color);
  border-top: 4px solid transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s linear infinite;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(1turn);
  }
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: opacity 0.3s;
  transform: translateZ(0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom);
  top: var(--swiper-pagination-top);
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width);
  height: var(--swiper-pagination-bullet-height);
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius);
  background: var(--swiper-pagination-bullet-inactive-color);
  opacity: var(--swiper-pagination-bullet-inactive-opacity);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity);
  background: var(--swiper-pagination-color);
}

.swiper-pagination-vertical.swiper-pagination-bullets,
.swiper-vertical > .swiper-pagination-bullets {
  right: var(--swiper-pagination-right);
  left: var(--swiper-pagination-left);
  top: 50%;
  transform: translate3d(0, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap) 0;
  display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: transform 0.2s, top 0.2s;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform 0.2s, left 0.2s;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: transform 0.2s, right 0.2s;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color);
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size);
  left: 0;
  top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical > .swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

/* 写真 */
.custom-slider-overflow-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    max-height: 350px;
    margin: 0 auto;
    max-width: none;
    background-color: #faf8f4;
}

@media only screen and (min-width: 768px) {
  .custom-slider-overflow-wrapper {
    float: left;
    max-width: 68%;
    max-height: 436px;
  }
}

@media only screen and (min-width: 1025px) {
  .custom-slider-overflow-wrapper {
    max-width: none;
    max-height: 326px;
  }
}

.slider-image-clipper {
    position: relative;
    overflow: hidden;
    border-radius: 0;
    padding-bottom: 56.25%;
    width: auto;
    height: 100%;
}

.custom-slider-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.slider-items-wrapper {
    display: flex;
    width: 100%;
    height: 100%;
    transition: transform 0.5s ease-in-out;
    will-change: transform;
}

.slider-item {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.slider-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.slider-item.is-landscape .slider-image {
    object-fit: cover;
}

.slider-item.is-portrait .slider-image {
    width: auto;
    height: 100%;
    object-fit: contain;
    border-radius: 0;
}

.slider-item.is-square .slider-image {
    width: auto;
    height: 100%;
    object-fit: contain;
    border-radius: 0;
}

.slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 20px; 
    height: 20px; 
    border-radius: 624.9375rem;
    background-color: #16A1D6;
    opacity: 0.75;
    color: #ffffff;
    border: none;
    cursor: pointer;
    line-height: 1;
    z-index: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.3s;
    padding: 0; 
}

.slider-arrow svg {
    width: 2rem; 
    height: 2rem;
}

.slider-arrow svg path {
  stroke: currentColor;
  stroke-width: 1.2px;
}

.prev-arrow {
    left: 0;
    transform: translateY(-50%) translateX(-140%);
}

.next-arrow {
    right: 0;
    transform: translateY(-50%) translateX(140%);
}

.prev-arrow svg {
    transform: scaleX(-1);
}

.slider-items-wrapper {
  position: relative;
}

.slider-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

.slider-item.active {
  opacity: 1;
  z-index: 1;
}

/* 動作 */
.fadeIn_up {
  opacity: 0;
  transform: translateY(50%);
  transition: opacity 1s ease-out 2s, transform 0.5s ease-out 2s;
}

.fadeIn_up.is-show {
  transform: translateY(0);
  opacity: 1;
}

.lp-nada-top-image .fadeIn_up {
  transition: opacity 1s ease-out 1.5s, transform 0.5s ease-out 1.5s;
}

@keyframes slideDown {
    from { transform: translateY(-100%); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

@keyframes bgFade {
    from { background-color: var(--colorWhite); }
    to { background-color: rgba(255, 255, 255, 0.9); }
}

@keyframes fadeInBg {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes clipExpand {
    from { clip-path: polygon(100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); }
    to { clip-path: polygon(100% 0, 100% calc(100% - 80px), 50% 100%, 0 calc(100% - 80px), 0 0); }
}

@keyframes expandRight {
  from { transform: scaleX(0); }
  to   { transform: scaleX(1); }
}

@keyframes bgWipe {
  from { background-size: 100% 100%; background-position: right; }
  to   { background-size: 0% 100%; background-position: right; }
}

.wave {
  animation: waveFloat 2s ease-in-out infinite;
  animation-delay: 2s;
}

@keyframes waveFloat {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-15px);
  }
}