@charset "UTF-8";

@font-face {
  font-family: "Noto Sans JP";
  font-weight: 400;
  src: url(webfonts/NotoSansJP-Regular.ttf) format("ttf");
}

:root {
  --gradient-primary: linear-gradient(90deg, #4169e1 0%, #cb00e3 100%);
  --gradient-accent: linear-gradient(90deg, #ff7a00 0%, #ffbf00 100%);
  --color-navy: navy;
  --color-navy2: #001464;
  --color-white: #fff;
  --font-weight-bold: bold;
  --border-radius-circle: 50%;
}

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

a,
div,
article,
aside,
details,
figcaption,
figure,
ul,
li,
dl,
dt,
dd,
footer,
header,
main,
menu,
nav,
section,
form,
input {
  box-sizing: border-box;
}

iframe {
  vertical-align: bottom;
}

address {
  font-style: normal;
}

*:focus {
  outline: none;
}

html {
  font-size: calc(100vw / 32);
  width: 100%;
  min-width: 100%;
  height: 100%;
}

body {
  width: 100%;
  min-width: 100%;
  height: 100%;
  -webkit-text-size-adjust: 100%;
  padding: 0;
  margin: 0;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1;
}

input {
  font-family: "Noto Sans JP", sans-serif;
}

input[type="submit"] {
  cursor: pointer;
}

.top_wrapper {
  overflow: hidden;
}

a {
  color: #333;
  text-decoration: none;
  cursor: pointer;
  transition: 0.2s;
}

a:hover {
  opacity: 0.7;
}

.top_wrapper img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  margin: 0;
  padding: 0;
  pointer-events: none;
}

.sp_cont {
  display: block;
}

.pc_cont {
  display: none;
}

#backToTop {
  display: none;
  position: fixed;
  bottom: 8vw;
  right: 2vw;
  width: 7.5vw;
  height: auto;
  border: none;
  cursor: pointer;
  z-index: 100;
}

#backToTop:before {
  content: "";
  display: block;
  padding-top: 100%;
}

#backToTop img {
  position: absolute;
  top: 0;
  width: 100%;
  height: auto;
  border: none;
}

#backToTop:hover img {
  opacity: 0.8;
}

.yl_page {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 80vw;
  height: 100%;
  padding-bottom: 10vh;
  box-sizing: border-box;
  margin: 0 auto;
}

.yl_page .yl_fs_l {
  font-size: 1.4rem;
}

.yl_page .yl_fs {
  font-size: 1.2rem;
}

.yl_page .logo {
  display: block;
  margin: 0 auto 7.5vw;
  text-align: center;
}

.yl_page .logo img {
  width: auto;
  height: 12vw;
}

.yl_page span {
  display: block;
  font-size: 1.2rem;
  font-weight: 700;
  margin-top: 2.5vw;
}

.yl_page .alert {
  position: relative;
  margin-bottom: 5vw;
  font-size: 1.2rem;
  text-align: center;
  border-radius: 3px;
}

.yl_page .alert button {
  display: none;
}

.yl_form {
  overflow: hidden;
}

.yl_form .yl_form_input_wrapper {
  margin-bottom: 7.5vw;
}

.yl_form .yl_form_input_wrapper label {
  display: block;
  margin-bottom: 2.5vw;
}

.yl_form input[type="text"],
.yl_form input[type="email"],
.yl_form input[type="password"] {
  width: 100%;
  height: 8.75vw;
  padding: 0 2.5vw;
  font-size: max(1.6rem, 16px);
  border-radius: 3px;
  border: 1px solid #cbd6e2;
  background: #f5f8fa;
}

.yl_form .forgot_the_password {
  display: block;
  margin-bottom: 3.75vw;
  color: #0279be;
}

.yl_form input[type="submit"] {
  width: 100%;
  height: 10vw;
  margin: 0 auto;
  color: #fff;
  letter-spacing: 4px;
  border-radius: 10vw;
  background: #c12af8;
  background-image: -moz-linear-gradient(0.45turn, #1a68c5, #c12af8);
  background-image: -webkit-linear-gradient(0.45turn, #1a68c5, #c12af8);
  background-image: -ms-linear-gradient(0.45turn, #1a68c5, #c12af8);
  border: none;
  background-size: 200% 100%;
  -webkit-animation: cbAnime 12s ease infinite;
  -moz-animation: cbAnime 12s ease infinite;
  animation: cbAnime 12s ease infinite;
}

.yl_page .title {
  text-align: center;
  margin-bottom: 32px;
}

.yl_page .txt {
  text-align: center;
  line-height: 1.6;
  margin-bottom: 32px;
}

.yl_page .error-message {
  color: red;
  font-size: 1.6rem;
  margin-top: 8px;
}

.yl_page .el_back_login_link {
  margin: 32px 0;
  text-align: center;
}

.yl_page .el_back_login_link a {
  color: #0279be;
}

.check_form {
  width: 90%;
  max-width: 400px;
  padding: 16px;
  margin: 32px auto;
  border-radius: 16px;
  border: 2px solid #1672a9;
  background: #fcfdff;
}

.check_form .alert {
  color: red;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 24px;
}

.check_form .alert button {
  display: none;
}

.check_form label {
  display: block;
  margin-bottom: 24px;
  line-height: 1.4;
}

.check_form .form-control {
  width: 100%;
  height: 40px;
  font-size: 16px;
  margin-bottom: 24px;
  border: 1px solid #1672a9;
  background: #fff;
}

.mauticform-radiogrp-row {
  display: flex;
  margin-top: 12px;
}

.mauticform-radiogrp-row .mauticform-radiogrp-radio {
  margin-right: 8px;
}

.mauticform-radiogrp-row .mauticform-radiogrp-label {
  margin: 0;
  font-size: 1.6rem;
}

.mauticform-radiogrp {
  justify-content: left !important;
  gap: 40px;
}

.check_form .btn {
  display: block;
  width: 80px;
  height: 32px;
  margin: 0 0 0 auto;
  cursor: pointer;
  color: #fff;
  font-size: 14px;
  border: none;
  border-radius: 4px;
  background: #1672a9;
}

#upper {
  width: 100%;
  height: 16.25vw;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  background: rgb(255 255 255 / 75%);
  z-index: 100;
  position: fixed;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

#upper .inner {
  display: flex;
  justify-content: left;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-left: 7vw;
}

#upper .logo {
  overflow: hidden;
  margin-top: 1vw;
}

#upper .logo img {
  width: auto;
  height: 7.5vw;
  line-height: 1;
}

#upper .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 280px;
  padding-top: 2px;
  width: 22vw;
  max-height: 52px;
  height: 5vw;
  background: linear-gradient(90deg, #4169e1 0%, #cb00e3 100%);
  color: #fff;
  text-decoration: none;
  border-radius: 50px;
  font-weight: 500;
  font-size: clamp(1rem, 1.4vw, 1.8rem);
  text-align: center;
  transition: 0.2s;
  position: relative;
  z-index: 1;
}

a.btn:hover {
  filter: brightness(1.2);
  opacity: 1;
}

.link_btn {
  letter-spacing: 1px;
  padding-bottom: 2px;
}

#sp_main .secont {
  position: relative;
}

#sp_main .secont .abs {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  border-radius: 50vw;
  z-index: 10;
}

#sp_main .secont .abs.s1 {
  width: 75vw;
  height: 15.8vw;
}

#sp_main .secont .abs.s2 {
  width: 87.5vw;
  height: 15.7vw;
  left: 1.5vw;
}

#sp_main .secont .abs.s3 {
  width: 67vw;
  height: 13.9vw;
}

#sp_main .secont .abs.s4 {
  width: 67vw;
  height: 13.9vw;
}

#sp_main .secont .abs.s5 {
  width: 46vw;
  height: 11.4vw;
  right: auto;
  left: 5vw;
}

#sp_main .sec_1 .abs {
  top: 70.6vw;
}

#sp_main .sec_2 .abs {
  top: 5vw;
}

#sp_main .sec_3,
#sp_main .sec_4 {
  background: #ebf2fb;
}

#sp_main .sec_6 .abs {
  top: 106vw;
}

#sp_main .sec_7 .abs {
  top: 604.2vw;
}

#sp_main .sec_12 .abs {
  top: 31.1vw;
}

#sp_main .sec_14 {
  overflow: hidden;
  background: url(../img/top/sp/sec_15_bg.webp) bottom center repeat-y;
  background-size: 100% auto;
}

#sp_main .sec_14 .abs {
  top: 104vw;
}

#sp_main .sec_15 {
  overflow: hidden;
  margin-top: -4px;
  background: url(../img/top/sp/sec_15_bg.webp) bottom center repeat-y;
  background-size: 100% auto;
}

#sp_main .sec_15 .abs {
  top: 477.2vw;
}

#sp_main .sec_15 .shiryou {
  display: block;
  width: 70%;
  max-width: 480px;
  margin: 0 auto 15vw;
}

#sp_main .sec_17 .abs {
  top: 156.3vw;
}

#form_area {
  color: #001464;
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(16px);
  box-shadow: 0 10px 24px #4b16c53d;
  border-radius: 3.5vw;
  padding: 11.7vw 5vw 16.5vw;
}

#form_area .required {
  color: #cf2e7e;
}

#form_area .mv {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  background: url(../img/form/inquery_bg.webp) left top repeat-x;
  background-size: auto 100%;
}

#form_area .mv img {
  width: 100%;
  height: auto;
}

#form_area .form_inner {
  width: 90%;
  padding: 15.3vw 0 16vw;
  margin: 0 auto;
}

#form_area .area_title {
  color: #7f7f7f;
  font-size: 2rem;
  text-align: center;
  margin: 0 0 12vw;
}

#form_area .mauticform_wrapper {
  width: 100%;
  padding: 0;
  margin: 0 auto;
}

#form_area form {
  position: relative;
  width: 100%;
}

#form_area .mauticform-message {
  position: absolute;
  bottom: -10vw;
  width: 100%;
  color: #333;
  font-size: 1.2rem;
  font-weight: 700;
  text-align: center;
}

#form_area .mauticform-row {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 6.3vw;
}

#form_area .mauticform-row.mauticform-radiogrp {
  align-items: center;
  margin-bottom: 36px;
}

#form_area .mauticform-radiogrp-row {
  align-items: center;
  margin-top: 0;
}

#form_area .mauticform-row input.mauticform-radiogrp-radio {
  height: 3vw;
  margin: 0 1.5vw 0 0;
}

#form_area .mauticform-row label {
  width: auto;
  color: #001464;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0;
  margin: 0 2.5vw 0 0;
}

#form_area .mauticform-row.mauticform-required .mauticform-label:after {
  position: absolute;
  top: 0;
  content: " ※";
  color: #cf2e7e;
  font-size: 2.6vw;
}

#form_area .mauticform-row .mauticform-helpmessage {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 4vw;
  padding: 0 1.25vw;
  color: #fff;
  font-size: 0.9rem;
  border-radius: 4px;
  background-color: #4ea49b;
}

#form_area .mauticform-row:not(.mauticform-required) label::before {
  content: "任意";
  color: #fff;
  background: #2268c5;
  font-size: 2.8vw;
  padding: 0.8vw 1.2vw;
  border-radius: 0.8vw;
  margin: auto;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 31vw;
}

#mauticform_label_kyaouraimianjieowenihewase_o_weni_hewase_nei_rong::after {
  content: "例）無料トライアルを体験したい";
  display: inline-block;
  width: 100%;
  height: auto;
  color: #7c7c7c;
  font-size: 3.8vw;
  padding-top: 1.7vw;
  letter-spacing: -0.2px;
}

#form_area .mauticform-row input,
#form_area .mauticform-row textarea {
  width: 100%;
  height: 11.5vw;
  padding: 1.25vw 5vw;
  margin-top: 2.3vw;
  color: #001464;
  font-size: max(1.2rem, 16px);
  border-radius: 6px;
  border: 1px solid rgb(212 212 212);
  background-color: rgb(239, 239, 239);
}

#form_area .mauticform-row textarea {
  height: 36.5vw;
  margin-top: 2vw;
}

#form_area .add_txt:after {
  content: "例）詳しい料金について知りたい";
  position: absolute;
  top: 8vw;
  left: 0;
  color: #7c7c7c;
  font-size: 1.2rem;
}

#form_area .mauticform-freehtml {
  display: block;
  width: 100%;
  text-align: center;
  margin: 8.9vw auto 13.2vw;
}

#form_area .mauticform-freehtml .mautic_txt1 {
  font-size: 1rem;
  line-height: 1.6;
}

#form_area .mauticform-freehtml .mautic_txt1 a {
  color: #3873bc;
  text-decoration: underline;
}

#form_area .mauticform-row.mauticform-button-wrapper {
  position: relative;
  width: 72vw;
  height: 13.7vw;
  margin: 0 auto;
  border-radius: 15vw;
  overflow: hidden;
  box-shadow: 10px 10px 18px #0006ff24;
}

#form_area button[type="submit"] {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  color: #fff;
  font-size: 1.5rem;
  background: linear-gradient(90deg, #4169e1 0%, #cb00e3 100%);
  border: none;
}

#form_area .wrap {
  position: relative;
}

#form_area .form_abs {
  position: absolute;
  top: 107vw;
  left: 10vw;
  width: 79.8vw;
}

#form_area .form_abs .mauticform-row {
  margin-bottom: 0;
}

#form_area .form_abs .mauticform-row input {
  width: 100%;
  height: 11vw;
  padding: 1.25vw 2vw;
  background: #fff;
}

#form_area .form_abs .mauticform-freehtml {
  display: block;
  width: 100%;
  text-align: center;
  margin: 7.9vw auto 4.3vw;
}

#form_area .form_abs .mauticform-freehtml .mautic_txt1 {
  color: #7f7f7f;
  font-size: 1rem;
  line-height: 1.4;
  letter-spacing: -2px;
}

#form_area .form_abs .mauticform-freehtml .mautic_txt1 a {
  color: #7f7f7f;
}

#form_area .form_abs .mauticform-row.mauticform-button-wrapper {
  position: relative;
  width: 62.2vw;
  height: 11.8vw;
  margin: 0 auto;
}

#form_area .form_abs button[type="submit"] {
  font-size: 1.6rem;
  background: #365196;
}

#form_area .bottom_bar {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 12.8125vw;
  background: #365196;
}

#form_area .bottom_bar .b_inner {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 5vw;
}

#form_area .bottom_bar .link {
  display: flex;
  align-items: center;
  color: #fff;
  font-size: 1.7rem;
}

#form_area .bottom_bar .link:before {
  content: "";
  display: block;
  width: 4.6875vw;
  height: 4.6875vw;
  margin-right: 1.25vw;
  background: url(../img/form/sp/tel_ic.webp) no-repeat;
  background-size: cover;
}

#form_area .bottom_bar .txt {
  color: #fff;
  font-size: 1.2rem;
}

#under {
  position: relative;
  width: 100%;
  line-height: 1;
  overflow: hidden;
  padding: 6.875vw 0 10vw;
  border-top: 3px solid rgb(255 255 255 / 50%);
  background: rgb(245 245 245 / 50%);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  /* z-index: -1; */
}

#under a {
  color: #001464;
}

#under.checkform {
  padding: 6.875vw 0;
}

/*フッターナビ
===============================*/

#under .f_logo {
  text-align: center;
}

#under .f_logo img {
  width: auto;
  height: 6.5625vw;
  object-fit: contain;
}

#under .f_link {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: 5vw 0 8vw;
}

#under .f_link p {
  font-size: 1.2rem;
  margin: 0 3.75vw;
}

#footer-nav {
  padding: 4.78vw 6.374vw 7.968vw;
}

#footer-nav .footer-nav-container {
  margin: 0 6.374vw;
}

#footer-nav .footer-nav-inner {
  list-style-type: none;
  color: var(--color-navy2);
  font-size: 3.984vw;
}

#footer-nav .footer-nav-inner .footer-nav-btn {
  width: 100%;
  border-bottom: 1px solid var(--color-navy2);
  padding: 4.78vw;
}

#footer-nav .footer-nav-inner .footer-nav-inner-child {
  list-style-type: none;
  font-size: 3.187vw;
}

#footer-nav .footer-nav-inner-child .footer-nav-inner-menu {
  width: 95%;
  padding: 4.78vw 0 4.78vw 4.78vw;
  margin-left: 5%;
  border-bottom: 1px dotted var(--color-navy2);
}

#footer-nav .footer-nav-inner-child li a {
  display: inline-block;
  width: 100%;
}

#footer-nav .footer-cta-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#footer-nav .footer-cta-btn .btn {
  width: 46%;
  border-radius: 25px;
  margin-top: 6.374vw;
  display: inline-block;
  font-size: 3.984vw;
  text-align: center;
  color: #fff;
  font-weight: 700;
  padding: 3.984vw 0;
  text-wrap: nowrap;
}

#footer-nav .footer-cta-btn .btn:first-child {
  background: var(--gradient-accent);
}

#footer-nav .footer-cta-btn .btn:last-child {
  background: var(--gradient-primary);
}

/*関連サービス
===============================*/
#service-section {
  margin: 0 3.864vw 3.864vw;
  border-bottom: 1px solid #000080;
}

#service-section .footer-service-title {
  font-size: 3.381vw;
  font-weight: 700;
  text-align: center;
  position: relative;
  color: #000080;
  /* margin-bottom: ; */
}

#service-section .footer-service-title:before {
  content: "";
  background: #000080;
  height: 1px;
  width: 29.95vw;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

#service-section .footer-service-title::after {
  content: "";
  background: #000080;
  height: 1px;
  width: 29.95vw;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}

#service-section .footer-service {
  padding: 4.186vw 0 1.86vw;
}

#service-section .footer-service li {
  list-style-type: none;
  font-size: 3.381vw;
  text-align: center;
  margin-bottom: 3.864vw;
}

#under .copy {
  display: block;
  width: 100%;
  font-size: 1rem;
  letter-spacing: 0;
  text-align: center;
}

#fixed_bar {
  position: fixed;
  bottom: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 16.875vw;
  background: #365196;
  z-index: 100;
}

#fixed_bar .fb_inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 2.5vw 5vw 0;
}

#fixed_bar .tel_box {
  color: #fff;
}

#fixed_bar .tel_box .txt {
  display: block;
  font-size: 1rem;
  letter-spacing: -1px;
  margin-bottom: 2.1875vw;
}

#fixed_bar .tel_box .tel_number {
  color: #fff;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 1px;
}

#fixed_bar .btn_box {
  width: 45vw;
  height: 11.5625vw;
}

#fixed_bar .btn_box .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 10vw;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  background: #e50180;
}

#shiryoseikyu {
  width: 100%;
  height: auto;
  overflow: hidden;
  padding: 64px 0;
  line-height: 1;
  background: #e8e8e8;
}

#shiryoseikyu .wrap {
  width: 100%;
  margin: 0 auto;
}

#shiryoseikyu .txt {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
}

#shiryoseikyu .cont1,
#shiryoseikyu .cont2 {
  width: 100%;
  overflow: hidden;
  padding: 64px 32px;
}

#shiryoseikyu .cont1 {
  color: #fff;
  margin-bottom: 16px;
  background: #016fbe;
}

#shiryoseikyu .cont1 .ic1:before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  background-image: url(../img/siryou/siryou_mail2.webp);
  background-repeat: no-repeat;
  background-size: 100% auto;
  margin-right: 16px;
}

#shiryoseikyu .cont1 .link {
  width: 72%;
  max-width: 240px;
  padding: 10px 24px 8px;
  margin: 16px auto 32px;
  color: #016fbe;
  background: #fff;
}

#shiryoseikyu .cont1 .link:after {
  content: url(../img/siryou/siryou_ya.webp);
  position: relative;
  top: -1px;
  margin-left: 8px;
}

#shiryoseikyu .cont1 .arrow {
  width: 48px;
  margin: 0 auto 32px;
}

#shiryoseikyu .cont1 .ic2 {
  line-height: 1.4;
}

#shiryoseikyu .cont1 .ic2:before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  margin-right: 16px;
  background-image: url(../img/siryou/siryou_hito2.webp);
  background-repeat: no-repeat;
  background-size: 100% auto;
}

#shiryoseikyu .cont2 {
  background: #fff;
}

#shiryoseikyu .cont2 .txt {
  justify-content: flex-start;
}

#shiryoseikyu .cont2 .box {
  width: 240px;
  margin: 0 auto;
}

#shiryoseikyu .cont2 .box input[type="text"] {
  width: 100%;
  height: 40px;
  padding: 8px;
  margin: 8px 0 24px;
  font-size: 16px;
  border: 1px solid #ddd;
  border-radius: 0;
}

#shiryoseikyu .cont2 .mau_box .mauticform-row {
  margin: 0;
}

#mauticform_ziliaoqingqiu_submit {
  display: none;
}

#shiryoseikyu .cont2 .pass_box input[type="submit"] {
  display: block;
  width: 80px;
  padding: 8px 0 6px;
  margin: 0 0 0 auto;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  border: 0;
  border-radius: 0;
  background: #016fbe;
}

.slide_area {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100svh;
}

.slid_cont {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  box-sizing: content-box;
  background: #000;
}

.slid_wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  padding-bottom: calc(56.4%+36px);
}

.slid_wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*trials
===============================*/
/* 共通 */
.trials-title {
  font-size: 32px;
  font-weight: 500;
  text-align: center;
  margin: 64px 0 56px;
  color: #000080;
}

.trials-title .sp-cont {
  display: none;
}

.trials-container {
  max-width: 1152px;
  display: flex;
  gap: 2.7%;
  align-items: flex-start;
  margin: 0 auto 120px;
}

.trials-container section {
  width: 47.9%;
  height: 826px;
  background: rgba(255, 255, 255, 0.6);
  border-radius: 4px;
  padding: 72px 0 0;
  border: 1px solid rgba(102, 102, 102, 0.3);
}

.trials-container section h2,
.trials-container section p,
.trials-container section .trialbtn {
  text-align: center;
}

.trials-container section h2 {
  margin: 24px auto 32px;
  font-size: 40px;
}

.trials-container section .trialbtn {
  display: block;
  margin: 0 auto;
  color: #fff;
  width: 256px;
  font-size: 24px;
  font-weight: 700;
  padding: 23px 0 24px;
  border-radius: 50px;
}

.trials-container section .subcatch {
  font-size: 32px;
  font-weight: 700;
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.trials-container section figure img {
  width: 100%;
  object-fit: cover;
}

/* 1ヶ月無料トライアル */
.trials-container .onemonthtrial {
  box-shadow: -8px 8px 4px rgba(0, 0, 0, 0.25);
}

.trials-container .onemonthtrial h2 {
  color: #cb00e3;
}

.trials-container .onemonthtrial .trialbtn {
  background: #4169e1;
}

.trials-container .onemonthtrial figure {
  width: 78.5%;
  margin: 48px auto 72px;
}

/* 無料お試し面接 */
.trials-container .interviewtrial {
  box-shadow: 8px 8px 4px rgba(0, 0, 0, 0.25);
}

.trials-container .interviewtrial h2 {
  color: #4169e1;
}

.trials-container .interviewtrial .trialbtn {
  background: #cb00e3;
}

.trials-container .interviewtrial figure {
  width: 100%;
  margin: 61px auto 85px;
}

@media (orientation: landscape) and (max-width: 800px) {
  .slid_wrap {
    height: 100svh;
    padding-bottom: initial;
  }
}

@media (min-width: 641px) and (max-width: 1027px) {
  html {
    font-size: calc(100vw / 112);
  }

  .sp_cont {
    display: none;
  }

  .pc_cont {
    display: block;
  }

  #backToTop {
    bottom: 20px;
    right: 20px;
    width: 40px;
  }

  .yl_page {
    width: 480px;
    padding-bottom: 5vh;
  }

  .yl_page .yl_fs_l {
    font-size: 18px;
  }

  .yl_page .yl_fs {
    font-size: 16px;
  }

  .yl_page .logo {
    margin: 0 auto 64px;
  }

  .yl_page .logo img {
    width: auto;
    height: 64px;
  }

  .yl_page span {
    font-size: 1.6rem;
    margin-top: 16px;
  }

  .yl_page .alert {
    margin-bottom: 48px;
    font-size: 1.6rem;
  }

  .yl_form {
    overflow: hidden;
  }

  .yl_form .yl_form_input_wrapper {
    margin-bottom: 24px;
  }

  .yl_form .yl_form_input_wrapper label {
    margin-bottom: 8px;
  }

  .yl_form input[type="text"],
  .yl_form input[type="email"],
  .yl_form input[type="password"] {
    width: 100%;
    height: 40px;
    padding: 8px 16px;
    font-size: 1.6rem;
  }

  .yl_form .forgot_the_password {
    margin-bottom: 24px;
  }

  .yl_form input[type="submit"] {
    width: 100%;
    height: 48px;
  }

  .yl_page .title {
    text-align: center;
    margin-bottom: 32px;
  }

  .yl_page .txt {
    text-align: center;
    line-height: 1.6;
    margin-bottom: 32px;
  }

  .yl_page .error-message {
    color: red;
    font-size: 1.6rem;
    margin-top: 8px;
  }

  .yl_page .el_back_login_link {
    margin: 32px 0;
    text-align: center;
  }

  .yl_page .el_back_login_link a {
    color: #0279be;
  }

  #upper {
    width: 100%;
    height: 8vw;
  }

  #upper .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    padding: 0 42px;
    margin: 0 auto;
  }

  #upper .logo {
    margin-top: 1px;
  }

  #upper .logo img {
    height: 3.5vw;
  }

  #upper .head_pc {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }

  #upper .head_pc .tel_box {
    margin-right: 29px;
  }

  #upper .head_pc .tel_box .txt {
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 4px;
  }

  #upper .head_pc .tel_box .tel_number {
    color: #016fbe;
    font-size: 3.5rem;
    font-weight: 700;
  }

  #upper .head_pc .mail_box {
    width: 28vw;
  }

  #upper .head_pc .mail_box .btn {
    display: block;
  }

  #upper .head_pc .mail_box .btn:hover img {
    filter: brightness(1.2);
  }

  #pc_main .inner_wrap {
    position: relative;
    width: 100%;
    margin: 0 auto;
    z-index: 10;
  }

  #pc_main .img_style2 {
    position: relative;
    width: 100%;
    text-align: center;
  }

  #pc_main .img_style2:before {
    content: "";
    display: block;
  }

  #pc_main .img_style2 img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: auto;
    height: 100%;
  }

  #pc_main .shadow {
    box-shadow: 2px 2px 9px rgba(0, 0, 0, 0.5);
  }

  #pc_main .btn_wrap {
    width: 37vw;
    margin: 0 auto;
  }

  #pc_main .btn_wrap .link_btn {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
  }

  #pc_main .btn_wrap .link_btn:hover img {
    filter: brightness(1.2);
  }

  #pc_main .sec_1 {
    background: linear-gradient(0turn, #01a39f, #017abc);
  }

  #pc_main .sec_1 .wrap {
    position: relative;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
  }

  #pc_main .sec_1 .btn_wrap {
    position: absolute;
    top: 75%;
    left: 4%;
  }

  #pc_main .sec_2 {
    background: #ecf4fa;
  }

  #pc_main .sec_2 .inner_wrap {
    padding: 3vw 0 8vw;
  }

  #pc_main .sec_2 .area_title {
    position: absolute;
    top: 12%;
    left: 0.5%;
    right: 0;
    max-width: 61.3%;
    margin: auto;
  }

  #pc_main .sec_2 .area_title:before {
    padding-top: 10.358%;
  }

  #pc_main .sec_2 .sub_title {
    position: absolute;
    top: 21.8%;
    left: -0.8%;
    right: 0;
    max-width: 61.7%;
    margin: auto;
  }

  #pc_main .sec_2 .sub_title:before {
    padding-top: 7.2611%;
  }

  #pc_main .sec_3 {
    position: relative;
    background: #365196;
  }

  #pc_main .sec_3 .inner_wrap {
    padding: 0 0 13vw;
  }

  #pc_main .sec_3 .area_title {
    max-width: 40vw;
    margin: 0 auto 51px;
  }

  #pc_main .sec_3 .area_title:before {
    padding-top: 16.5399%;
  }

  #pc_main .sec_3 .media_img {
    max-width: 68vw;
    margin: 0 auto;
  }

  #pc_main .sec_3 .media_img:before {
    padding-top: 18.3146%;
  }

  #pc_main .sec_3 .mask {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(0% 75%, 0% 0%, 100% 0%, 100% 100%);
    background: #ecf4fa;
  }

  #pc_main .sec_4 {
    position: relative;
    background: #365196;
  }

  .sec_wrap {
    position: relative;
    overflow: hidden;
  }

  #pc_main .sec_4 .inner_wrap {
    padding: 0;
  }

  #pc_main .sec_4 .area_title {
    max-width: 39vw;
    margin: 0 auto 4.3vw;
  }

  #pc_main .sec_4 .area_title:before {
    padding-top: 7.8895%;
  }

  #pc_main .sec_4 .nayami {
    max-width: 86vw;
    margin: 0 auto 47px;
  }

  #pc_main .sec_4 .nayami:before {
    padding-top: 43.3895%;
  }

  #pc_main .sec_4 .mask {
    position: absolute;
    top: -91.7%;
    right: -10%;
    width: 140%;
    height: 100%;
    transform: rotate(5.7deg);
    background: #ecf4fa;
  }

  #pc_main .sec_4 .mask1 {
    position: absolute;
    bottom: -6vw;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    width: 14vw;
    height: 14vw;
    transform: rotate(45deg) skew(-4deg, -4deg);
    background: #365196;
    z-index: 1;
  }

  #pc_main .sec_5 {
    position: relative;
    padding-top: 12vw;
    background: linear-gradient(0.75turn, #01a39f, #017abc);
  }

  #pc_main .sec_5 .inner_wrap {
    overflow: hidden;
    padding-top: 8.5vw;
    background: url(../img/top/pc/sec_5_bg.webp) top center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_5 .area_title {
    max-width: 59vw;
    margin: 0 auto 5.6vw;
  }

  #pc_main .sec_5 .area_title:before {
    padding-top: 7.7023%;
  }

  #pc_main .sec_5 .sub_title {
    max-width: 67vw;
    margin: 0 auto 8vw;
  }

  #pc_main .sec_5 .sub_title:before {
    padding-top: 8.2271%;
  }

  #pc_main .sec_5 .btn_wrap {
    margin: 0 auto 21vw;
  }

  #pc_main .sec_5 .mask_bg {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(0% calc(100% - 92px), 0% 0%, 100% 0%, 100% 100%);
    background: #fff;
  }

  #pc_main .sec_6 {
    position: relative;
    overflow: hidden;
    padding: 5vw 0 0;
    background: linear-gradient(0.75turn, #01a39f, #017abc);
  }

  #pc_main .sec_6 .inner_wrap {
    padding-bottom: 7.7vw;
    background: url(../img/top/pc/sec_6_bg.webp) bottom center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_6 .area_title {
    max-width: 30vw;
    margin: 0 auto 6.8vw;
  }

  #pc_main .sec_6 .area_title:before {
    padding-top: 31.0087%;
  }

  #pc_main .sec_6 .cont {
    padding: 0 2vw;
  }

  #pc_main .sec_6 .txt {
    max-width: 82vw;
    margin: 6.5vw auto 27vw;
  }

  #pc_main .sec_6 .txt:before {
    padding-top: 12.4883%;
  }

  #pc_main .sec_6 .deco {
    position: absolute;
    top: -3.4vw;
    left: 4vw;
    width: 10vw;
    height: 10vw;
  }

  #pc_main .sec_6 .deco:before {
    padding-top: 100%;
  }

  #pc_main .sec_6 .mask {
    position: absolute;
    top: -98%;
    right: -10%;
    width: 140%;
    height: 100%;
    transform: rotate(5deg);
    background: #fff;
  }

  #pc_main .sec_7 {
    position: relative;
    overflow: hidden;
    padding: 11.5vw 0 0;
    background: url(../img/top/pc/sec_7_bg.webp) bottom center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_7 .area_title {
    max-width: 48.1vw;
    margin: 0 auto 11vw;
  }

  #pc_main .sec_7 .area_title:before {
    padding-top: 10.5431%;
  }

  #pc_main .sec_7 .cont {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    padding: 0 2vw;
  }

  #pc_main .sec_7 .cont p {
    width: 46vw;
    border-radius: 30px 32px 0 0;
  }

  #pc_main .sec_7 .layout {
    width: 37vw;
    overflow: hidden;
    padding: 6.3vw 0 7.8vw;
    margin: 0 0 0 12.4vw;
  }

  #pc_main .sec_7 .txt {
    max-width: 25vw;
    margin: 0 auto 2.2vw;
  }

  #pc_main .sec_7 .txt:before {
    padding-top: 7.8431%;
  }

  #pc_main .sec_7 .deco {
    position: absolute;
    top: -7vw;
    right: 15vw;
    width: 26vw;
  }

  #pc_main .sec_7 .deco:before {
    padding-top: 82.1752%;
  }

  #pc_main .sec_7 .bg {
    position: absolute;
    bottom: 0;
    right: -6vw;
    width: 36vw;
  }

  #pc_main .sec_7 .bg:before {
    padding-top: 126.2472%;
  }

  #pc_main .sec_8 {
    position: relative;
    overflow: hidden;
    padding: 12vw 0 0;
  }

  #pc_main .sec_8 .area_title {
    max-width: 42vw;
    margin: 0 auto 7.9vw;
  }

  #pc_main .sec_8 .area_title:before {
    padding-top: 19.708%;
  }

  #pc_main .sec_8 .deco {
    position: absolute;
    top: -8.4vw;
    right: 15vw;
    width: 26vw;
  }

  #pc_main .sec_8 .deco:before {
    padding-top: 82.1752%;
  }

  #pc_main .sec_8 .cont_wrap {
    position: relative;
    padding: 0 2vw;
    background: #eaf3fa;
  }

  #pc_main .sec_8 .cont_wrap .cont {
    position: relative;
    width: 100%;
    max-width: 1372px;
    margin: 0 auto;
    z-index: 10;
  }

  #pc_main .sec_8 .cont_wrap .cont.c1 {
    margin-bottom: 5.2vw;
  }

  #pc_main .sec_8 .cont_wrap .cont span {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background: #007db9;
    z-index: -1;
  }

  #pc_main .sec_8 .cont_wrap .cont.c1 span {
    right: -100%;
  }

  #pc_main .sec_8 .cont_wrap .cont.c2 span {
    left: -100%;
  }

  #pc_main .sec_9 {
    position: relative;
    overflow: hidden;
    padding: 7.2vw 0 10.3vw;
    background: #d7e6f4;
  }

  #pc_main .sec_9 .txt {
    max-width: 24vw;
    margin: 0 auto 2.4vw;
  }

  #pc_main .sec_9 .txt:before {
    padding-top: 7.8431%;
  }

  #pc_main .sec_9 .d_img {
    position: absolute;
    top: -1vw;
    left: 12.8vw;
    width: 100%;
    max-width: 14vw;
    overflow: hidden;
  }

  #pc_main .sec_9 .d_img:before {
    padding-top: 105.44%;
  }

  #pc_main .sec_9 .btn_wrap {
    width: 43vw;
  }

  #pc_main .sec_9 .mask {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 66vw;
    height: 100%;
    background: #eaf3fa;
    transform: skewX(32deg);
  }

  #pc_main .sec_10 {
    position: relative;
    overflow: hidden;
    padding: 8.4vw 0 10vw;
    background: linear-gradient(0.75turn, #01a39f, #017abc);
  }

  #pc_main .sec_10 .area_title {
    max-width: 54vw;
    margin: 0 auto 8.4vw;
  }

  #pc_main .sec_10 .area_title:before {
    padding-top: 35.1428%;
  }

  #pc_main .sec_10 .cont {
    width: 46vw;
    overflow: hidden;
    margin-bottom: 7.9vw;
    border-radius: 30px 32px 0 0;
  }

  #pc_main .sec_10 .cont.c1 {
    float: left;
    margin-left: 2vw;
  }

  #pc_main .sec_10 .cont.c2 {
    float: right;
    margin-right: 2vw;
  }

  #pc_main .sec_10 .txt {
    position: relative;
    left: 2.7vw;
    clear: both;
    max-width: 70vw;
    margin: 0 auto;
  }

  #pc_main .sec_10 .txt:before {
    padding-top: 16.5363%;
  }

  #pc_main .sec_11 {
    position: relative;
    overflow: hidden;
    padding: 10vw 0 0;
  }

  #pc_main .sec_11 .inner_wrap {
    overflow: hidden;
    background: url(../img/top/pc/sec_11_bg.webp) bottom center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_11 .area_title {
    max-width: 54.5vw;
    margin: 0 auto 33.5vw;
  }

  #pc_main .sec_11 .area_title:before {
    padding-top: 6.0734%;
  }

  #pc_main .sec_11 .btn_wrap {
    margin: 0 auto 18.3vw;
  }

  #pc_main .sec_12 {
    position: relative;
    padding: 4.8vw 0 8.6vw;
    background: linear-gradient(0.75turn, #01a39f, #017abc);
  }

  #pc_main .sec_12 .area_title {
    max-width: 25vw;
    margin: 0 auto 5.3vw;
  }

  #pc_main .sec_12 .area_title:before {
    padding-top: 37.071%;
  }

  #pc_main .sec_12 .cont {
    position: relative;
    padding: 0 2vw;
    margin-bottom: 5vw;
  }

  #pc_main .sec_12 .cont.c3 .link_wrap {
    position: absolute;
    top: 34.9vw;
    right: 13.5vw;
    display: block;
    width: 37.3vw;
    overflow: hidden;
  }

  #pc_main .sec_12 .cont.c3 .link_wrap .link_btn {
    display: block;
  }

  #pc_main .sec_12 .cont.c3 .link_wrap .link_btn:hover img {
    filter: brightness(1.2);
  }

  #pc_main .sec_12 .txt {
    max-width: 72vw;
    margin: 10vw auto 5vw;
  }

  #pc_main .sec_12 .txt:before {
    padding-top: 14.5454%;
  }

  #pc_main .sec_12 .txt2 {
    max-width: 46.8vw;
    margin: 0 auto 10vw;
  }

  #pc_main .sec_12 .txt2:before {
    padding-top: 11.9528%;
  }

  #pc_main .sec_12 .mask {
    position: absolute;
    top: -9.5vw;
    width: 101%;
    height: 9.6vw;
    clip-path: polygon(0% 0, 100% 100%, 0 100%);
    background: linear-gradient(0.75turn, #01a39f, #017abc);
    z-index: 10;
  }

  #pc_main .sec_13 {
    position: relative;
    overflow: hidden;
    padding: 10.7vw 0 10vw;
    background: #d7e6f4;
  }

  #pc_main .sec_13 .area_title {
    max-width: 22.6vw;
    margin: 0 auto 8vw;
  }

  #pc_main .sec_13 .area_title::before {
    padding-top: 16.4429%;
  }

  #pc_main .sec_13 .cont {
    width: 100%;
    max-width: 78.5vw;
    margin: 0 auto;
  }

  #pc_main .sec_13 .cont:before {
    padding-top: 40.2343%;
  }

  #pc_main .sec_13 .mask {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 67vw;
    height: 100%;
    background: #eaf3fa;
    transform: skewX(19deg);
  }

  #pc_main .sec_14 {
    background: linear-gradient(0turn, #01a39f, #017abc);
  }

  #pc_main .sec_14 .inner_wrap {
    overflow: hidden;
    background: url(../img/top/pc/sec_14_bg.webp) bottom center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_14 .area_title {
    max-width: 53vw;
    margin: 10.7vw auto 46.4vw;
  }

  #pc_main .sec_14 .area_title::before {
    padding-top: 6.06936%;
  }

  #pc_main .sec_14 .btn_wrap {
    margin: 0 auto 13.4vw;
  }

  #under {
    width: 100%;
    line-height: 1;
    overflow: hidden;
    padding: 3vw 0 3vw;
  }

  #under.checkform {
    padding: 3vw 0 3vw;
  }

  #under .f_inner {
    display: block;
    width: 100%;
    padding: 0 2vw;
    margin: 0 auto 2.3vw;
  }

  #under .f_logo {
    width: 14vw;
    max-width: 229px;
    margin: 0 auto 41px;
    position: relative;
  }

  #under .f_logo img {
    width: auto;
    height: 3vw;
  }

  #under .f_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 0;
  }

  #under .f_link p {
    font-size: 1.8rem;
    margin: 0 1vw;
  }

  #service-section .footer-service-title {
    font-size: 1.562vw;
  }

  #service-section .footer-service li {
    font-size: 1.5625vw;
    margin-bottom: 2.34375vw;
  }

  #under .copy {
    display: block;
    width: 100%;
    font-size: 1.5rem;
    text-align: center;
  }

  #fixed_bar {
    position: fixed;
    bottom: 0;
    left: 0;
    display: none !important;
    width: 100%;
    height: 16.875vw;
    background: #365196;
    z-index: 100;
  }

  #fixed_bar .fb_inner {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 2.5vw 5vw 0;
  }

  #fixed_bar .tel_box {
    color: #fff;
  }

  #fixed_bar .tel_box .txt {
    display: block;
    font-size: 1rem;
    letter-spacing: -1px;
    margin-bottom: 2.1875vw;
  }

  #fixed_bar .tel_box .tel_number {
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 1px;
  }

  #fixed_bar .btn_box {
    width: 45vw;
    height: 11.5625vw;
  }

  #fixed_bar .btn_box .btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: 10vw;
    color: #fff;
    font-size: 1.2rem;
    line-height: 1;
    background: #e50180;
  }

  #form_area .mv .mv_tel {
    position: absolute;
    top: 78%;
    left: 15%;
    width: 20.7%;
    height: 6%;
  }

  #form_area .mv .mv_tel2 {
    position: absolute;
    top: 85%;
    left: 9.2%;
    width: 20.7%;
    height: 6%;
  }

  #form_area .mv .mv_tel:hover img,
  #form_area .mv .mv_tel2:hover img {
    filter: grayscale(80%);
  }

  #form_area .form_inner {
    width: 640px;
    padding: 64px 32px 128px;
    margin: 0 auto;
  }

  #form_area .area_title {
    font-size: 28px;
    text-align: center;
    margin: 0 0 64px;
  }

  #form_area .mauticform-message {
    bottom: -48px;
    font-size: 16px;
  }

  #form_area .mauticform_wrapper {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }

  #form_area .mauticform-row {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 48px;
  }

  #form_area .mauticform-row label {
    width: 36%;
    font-size: clamp(13px, 1.8vw, 16px);
    margin: 10px 0 0;
  }

  #form_area .mauticform-radiogrp-row .mauticform-radiogrp-label {
    margin: 0;
  }

  #form_area .mauticform-row input.mauticform-radiogrp-radio {
    margin: 0 8px 0 0;
    height: 40px;
  }

  .mauticform-radiogrp-row .mauticform-radiogrp-label {
    margin: 0;
  }

  #form_area .mauticform-row.mauticform-required .mauticform-label:after {
    font-size: 12px;
  }

  #form_area .mauticform-row .mauticform-helpmessage {
    position: absolute;
    top: 8px;
    left: calc(36% - 64px);
    width: 40px;
    height: 20px;
    padding: 0;
    font-size: 12px;
  }

  #form_area .mauticform-row input,
  #form_area .mauticform-row textarea {
    width: 64%;
    height: 40px;
    padding: 8px 20px;
    margin-top: 0;
    font-size: max(1.6rem, 16px);
  }

  #form_area .mauticform-row textarea {
    height: 120px;
    margin-top: 36px;
  }

  #form_area .add_txt:after {
    content: "例）詳しい料金について知りたい";
    position: absolute;
    top: 11px;
    left: 36%;
    color: #7c7c7c;
    font-size: 14px;
  }

  #form_area .mauticform-freehtml {
    display: block;
    width: 100%;
    text-align: center;
    margin: 64px auto 56px;
  }

  #form_area .mauticform-freehtml .mautic_txt1 {
    font-size: 14px;
    line-height: 2;
  }

  #form_area .mauticform-row.mauticform-button-wrapper {
    width: 423px;
    height: 69px;
    margin: 0 auto 32px;
  }

  #form_area button[type="submit"] {
    font-size: 23px;
  }

  #form_area .wrap {
    position: relative;
    left: 5vw;
  }

  #form_area .form_abs {
    position: absolute;
    top: 22vw;
    left: 9.7vw;
    width: 31.6vw;
  }

  #form_area .form_abs .mauticform-row {
    margin-bottom: 0;
  }

  #form_area .form_abs .mauticform-row input {
    width: 100%;
    height: 3.6vw;
    padding: 1.25vw 2vw;
    background: #fff;
  }

  #form_area .form_abs .mauticform-freehtml {
    display: block;
    width: 100%;
    text-align: center;
    margin: 3.3vw auto 2.5vw;
  }

  #form_area .form_abs .mauticform-freehtml .mautic_txt1 {
    color: #7f7f7f;
    font-size: 1.2rem;
    line-height: 1.8;
  }

  #form_area .form_abs .mauticform-freehtml .mautic_txt1 a {
    color: #7f7f7f;
  }

  #form_area .form_abs .mauticform-row.mauticform-button-wrapper {
    position: relative;
    width: 26.8vw;
    height: 4.7vw;
    margin: 0 auto;
  }

  #form_area .form_abs button[type="submit"] {
    font-size: 2.3rem;
  }

  #shiryoseikyu .wrap {
    width: 480px;
  }

  #shiryoseikyu .cont2 .box input[type="text"] {
    height: 32px;
  }

  /* フッターナビ */

  #footer-nav {
    padding: 0 3.902vw 2.926vw;
  }

  #footer-nav .footer-nav-container {
    margin: 0 3.902vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }

  #footer-nav .footer-nav-inner {
    width: 46%;
    font-size: 1.707vw;
  }

  #footer-nav .footer-nav-inner:first-child,
  #footer-nav .footer-nav-inner:nth-child(2) {
    margin-bottom: 2.926vw;
  }

  #footer-nav .footer-nav-inner .footer-nav-btn {
    padding: 2.439vw;
    font-weight: 500;
  }

  #footer-nav .footer-nav-inner .footer-nav-inner-child {
    font-size: 1.707vw;
  }

  #footer-nav .footer-nav-inner-child .footer-nav-inner-menu {
    padding: 2.926vw 0 2.926vw 2.926vw;
  }

  #footer-nav .footer-cta-btn .btn {
    border-radius: 50px;
    margin-top: 3.902vw;
    font-size: 2.439vw;
    font-weight: 500;
    padding: 2.439vw 0;
  }

  /*trials
===============================*/
  /* 共通 */
  .trials .hero {
    height: fit-content !important;
  }

  .trials-title {
    font-size: 2.92vw;
    margin: 7.8vw 0 6.82vw;
  }

  .trials-container {
    justify-content: space-between;
    padding: 0 1.95vw;
    margin: 0 auto 120px;
  }

  .trials-container section {
    width: 49%;
    height: 680px;
  }

  .trials-container section h2 {
    margin: 3.9vw auto;
    font-size: 3.9vw;
  }

  .trials-container section .trialbtn {
    font-size: 2.43vw;
  }

  .trials-container section .subcatch {
    font-size: 2.43vw;
  }

  /* 1ヶ月無料トライアル */
  .trials-container .onemonthtrial {
    box-shadow: -0.97vw 0.97vw 0.48vw rgba(0, 0, 0, 0.25);
  }

  .trials-container .onemonthtrial figure {
    width: 78.5%;
    margin: 5.85vw auto 8.78vw;
  }

  /* 無料お試し面接 */
  .trials-container .interviewtrial {
    box-shadow: 0.97vw 0.97vw 0.48vw rgba(0, 0, 0, 0.25);
  }

  .trials-container .interviewtrial figure {
    width: 100%;
    margin: 7.43vw auto 10.36vw;
  }
}

@media (min-width: 1028px) {
  html {
    font-size: 10px;
  }

  .sp_cont {
    display: none;
  }

  .pc_cont {
    display: block;
  }

  #backToTop {
    bottom: 20px;
    right: 20px;
    width: 40px;
  }

  .yl_page {
    width: 480px;
    padding-bottom: 5vh;
  }

  .yl_page .yl_fs_l {
    font-size: 1.8rem;
  }

  .yl_page .yl_fs {
    font-size: 1.6rem;
  }

  .yl_page .logo {
    margin: 0 auto 64px;
  }

  .yl_page .logo img {
    width: auto;
    height: 61px;
  }

  .yl_page span {
    font-size: 1.6rem;
    margin-top: 16px;
  }

  .yl_page .alert {
    margin-bottom: 48px;
    font-size: 1.6rem;
  }

  .yl_form {
    overflow: hidden;
  }

  .yl_form .yl_form_input_wrapper {
    margin-bottom: 24px;
  }

  .yl_form .yl_form_input_wrapper label {
    margin-bottom: 8px;
  }

  .yl_form input[type="text"],
  .yl_form input[type="email"],
  .yl_form input[type="password"] {
    width: 100%;
    height: 40px;
    padding: 8px 16px;
    font-size: 1.6rem;
  }

  .yl_form .forgot_the_password {
    margin-bottom: 24px;
  }

  .yl_form input[type="submit"] {
    width: 100%;
    height: 48px;
  }

  .yl_page .title {
    text-align: center;
    margin-bottom: 32px;
  }

  .yl_page .txt {
    text-align: center;
    line-height: 1.6;
    margin-bottom: 32px;
  }

  .yl_page .error-message {
    color: red;
    font-size: 1.6rem;
    margin-top: 8px;
  }

  .yl_page .el_back_login_link {
    margin: 32px 0;
    text-align: center;
  }

  .yl_page .el_back_login_link a {
    color: #0279be;
  }

  #upper {
    width: 100%;
    height: 84px;
  }

  #upper .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1120px;
    height: 100%;
    margin: 0 auto;
    padding: 0 20px;
  }

  #upper .logo {
    margin-top: 1px;
  }

  #upper .logo img {
    height: 34px;
  }

  #upper .head_pc {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
  }

  #upper .head_pc .tel_box {
    margin-right: 29px;
  }

  #upper .head_pc .tel_box .txt {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 4px;
  }

  #upper .head_pc .tel_box .tel_number {
    color: #016fbe;
    font-size: 3rem;
    font-weight: 700;
  }

  #upper .head_pc .mail_box .btn {
    display: block;
  }

  #upper .head_pc .mail_box .btn:hover img {
    filter: brightness(1.2);
  }

  .bgbg {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    margin: auto;
    width: 1280px;
    height: 20000px;
    background: url(../img/top/bgbg.webp) top center no-repeat;
    background-size: 100% auto;
    opacity: 0.5;
    z-index: 100;
  }

  .asdf {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 1028px;
    height: 100%;
    border-left: 1px solid red;
    border-right: 1px solid red;
    z-index: 1000;
  }

  #pc_main .inner_wrap {
    position: relative;
    width: 100%;
    max-width: 1028px;
    margin: 0 auto;
    z-index: 10;
  }

  #pc_main .img_style2 {
    position: relative;
    width: 100%;
    text-align: center;
  }

  #pc_main .img_style2:before {
    content: "";
    display: block;
  }

  #pc_main .img_style2 img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: auto;
    height: 100%;
  }

  #pc_main .shadow {
    box-shadow: 2px 2px 9px rgba(0, 0, 0, 0.5);
  }

  #pc_main .btn_wrap {
    width: 380px;
    margin: 0 auto;
  }

  #pc_main .btn_wrap .link_btn {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
  }

  #pc_main .btn_wrap .link_btn:hover img {
    filter: brightness(1.2);
  }

  #pc_main .sec_1 {
    background: linear-gradient(0.75turn, #017abc, #01a39f);
  }

  #pc_main .sec_1 .wrap {
    position: relative;
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
  }

  #pc_main .sec_1 .btn_wrap {
    position: absolute;
    top: 75%;
    left: 60px;
  }

  #pc_main .sec_2 {
    position: relative;
    background: #ecf4fa;
  }

  #pc_main .sec_2 .inner_wrap {
    padding: 36px 0 74px;
  }

  #pc_main .sec_2 .area_title {
    position: absolute;
    top: 107px;
    left: 9px;
    right: 0;
    max-width: 624px;
    margin: auto;
  }

  #pc_main .sec_2 .area_title:before {
    padding-top: 10.358%;
  }

  #pc_main .sec_2 .sub_title {
    position: absolute;
    top: 197px;
    left: -6px;
    right: 0;
    max-width: 628px;
    margin: auto;
  }

  #pc_main .sec_2 .sub_title:before {
    padding-top: 7.2611%;
  }

  #pc_main .sec_3 {
    position: relative;
    background: #365196;
  }

  #pc_main .sec_3 .inner_wrap {
    padding: 0 0 174px;
  }

  #pc_main .sec_3 .area_title {
    max-width: 424px;
    margin: 0 auto 51px;
  }

  #pc_main .sec_3 .area_title:before {
    padding-top: 16.5399%;
  }

  #pc_main .sec_3 .media_img {
    max-width: 708px;
    margin: 0 auto;
  }

  #pc_main .sec_3 .media_img:before {
    padding-top: 18.3146%;
  }

  #pc_main .sec_3 .mask {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(0% 65%, 0% 0%, 100% 0%, 100% 100%);
    background: #ecf4fa;
  }

  #pc_main .sec_4 {
    position: relative;
    background: #365196;
  }

  .sec_wrap {
    position: relative;
    overflow: hidden;
  }

  #pc_main .sec_4 .inner_wrap {
    padding: 0;
  }

  #pc_main .sec_4 .area_title {
    max-width: 407px;
    margin: 0 auto 45px;
  }

  #pc_main .sec_4 .area_title:before {
    padding-top: 7.8895%;
  }

  #pc_main .sec_4 .nayami {
    max-width: 903px;
    margin: 0 auto 31px;
  }

  #pc_main .sec_4 .nayami:before {
    padding-top: 43.3895%;
  }

  #pc_main .sec_4 .mask1 {
    position: absolute;
    bottom: -69px;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    width: 140px;
    height: 140px;
    transform: rotate(45deg) skew(-4deg, -4deg);
    background: #365196;
    z-index: 1;
  }

  #pc_main .sec_5 {
    position: relative;
    padding-top: 141px;
    background: linear-gradient(0.75turn, #01a39f, #017abc);
  }

  #pc_main .sec_5 .inner_wrap {
    overflow: hidden;
    padding-top: 75px;
    background: url(../img/top/pc/sec_5_bg.webp) top center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_5 .area_title {
    max-width: 614px;
    margin: 0 auto 60px;
  }

  #pc_main .sec_5 .area_title:before {
    padding-top: 7.7023%;
  }

  #pc_main .sec_5 .sub_title {
    max-width: 692px;
    margin: 0 auto 80px;
  }

  #pc_main .sec_5 .sub_title:before {
    padding-top: 8.2271%;
  }

  #pc_main .sec_5 .btn_wrap {
    margin: 0 auto 254px;
  }

  #pc_main .sec_5 .mask_bg {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(0% calc(100% - 162px), 0% 0%, 100% 0%, 100% 100%);
    background: #fff;
  }

  #pc_main .sec_6 {
    position: relative;
    padding: 32px 0 0;
    background: linear-gradient(0.75turn, #01a39f, #017abc);
  }

  #pc_main .sec_6 .inner_wrap {
    padding-bottom: 95px;
    background: url(../img/top/pc/sec_6_bg.webp) bottom center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_6 .area_title {
    max-width: 310px;
    margin: 0 auto 68px;
  }

  #pc_main .sec_6 .area_title:before {
    padding-top: 31.0087%;
  }

  #pc_main .sec_6 .txt {
    max-width: 873px;
    margin: 63px auto 263px;
  }

  #pc_main .sec_6 .txt:before {
    padding-top: 12.4883%;
  }

  #pc_main .sec_6 .deco {
    position: absolute;
    top: -40px;
    left: 44px;
    width: 105px;
    height: 106px;
  }

  #pc_main .sec_6 .deco:before {
    padding-top: 100%;
  }

  #pc_main .sec_7 {
    position: relative;
    overflow: hidden;
    padding: 121px 0 0;
    background: url(../img/top/pc/sec_7_bg.webp) bottom center no-repeat;
    background-size: 100% 100%;
  }

  #pc_main .sec_7 .area_title {
    max-width: 506px;
    margin: 0 auto 116px;
  }

  #pc_main .sec_7 .area_title:before {
    padding-top: 10.5431%;
  }

  #pc_main .sec_7 .cont {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
  }

  #pc_main .sec_7 .cont .c1,
  #pc_main .sec_7 .cont .c2 {
    width: 506px;
  }

  #pc_main .sec_7 .cont p {
    border-radius: 30px 32px 0 0;
  }

  #pc_main .sec_7 .layout {
    width: 480px;
    overflow: hidden;
    padding: 65px 0 86px;
    margin: 0 0 0 83px;
  }

  #pc_main .sec_7 .txt {
    max-width: 246px;
    margin: 0 auto 22px;
  }

  #pc_main .sec_7 .txt:before {
    padding-top: 7.8431%;
  }

  #pc_main .sec_7 .deco {
    position: absolute;
    top: -76px;
    right: 160px;
    width: 266px;
  }

  #pc_main .sec_7 .deco:before {
    padding-top: 82.1752%;
  }

  #pc_main .sec_7 .bg {
    position: absolute;
    bottom: 0;
    right: -58px;
    width: 371px;
  }

  #pc_main .sec_7 .bg:before {
    padding-top: 126.2472%;
  }

  #pc_main .sec_8 {
    position: relative;
    overflow: hidden;
    padding: 124px 0 0;
  }

  #pc_main .sec_8 .area_title {
    max-width: 438px;
    margin: 0 auto 80px;
  }

  #pc_main .sec_8 .area_title:before {
    padding-top: 19.708%;
  }

  #pc_main .sec_8 .deco {
    position: absolute;
    top: -86px;
    right: 161px;
    width: 265px;
  }

  #pc_main .sec_8 .deco:before {
    padding-top: 82.1752%;
  }

  #pc_main .sec_8 .cont_wrap {
    position: relative;
    background: #eaf3fa;
  }

  #pc_main .sec_8 .cont_wrap .cont {
    position: relative;
    width: 100%;
    max-width: 1094px;
    margin: 0 auto;
    z-index: 10;
  }

  #pc_main .sec_8 .cont_wrap .cont.c1 {
    margin-bottom: 52px;
  }

  #pc_main .sec_8 .cont_wrap .cont span {
    position: absolute;
    top: 0;
    width: 100vw;
    height: 100%;
    background: #007db9;
    z-index: -1;
  }

  #pc_main .sec_8 .cont_wrap .cont.c1 span {
    left: 100%;
  }

  #pc_main .sec_8 .cont_wrap .cont.c2 span {
    right: 100%;
  }

  #pc_main .sec_9 {
    position: relative;
    overflow: hidden;
    padding: 78px 0 107px;
    background: #d7e6f4;
  }

  #pc_main .sec_9 .txt {
    max-width: 242px;
    margin: 0 auto 22px;
  }

  #pc_main .sec_9 .txt:before {
    padding-top: 7.8431%;
  }

  #pc_main .sec_9 .d_img {
    position: absolute;
    top: -18px;
    left: 132px;
    width: 100%;
    max-width: 150px;
    overflow: hidden;
  }

  #pc_main .sec_9 .d_img:before {
    padding-top: 105.44%;
  }

  #pc_main .sec_9 .btn_wrap {
    width: 450px;
  }

  #pc_main .sec_9 .mask {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 879px;
    height: 100%;
    background: #eaf3fa;
    transform: skewX(32deg);
  }

  #pc_main .sec_10 {
    position: relative;
    overflow: hidden;
    padding: 87px 0 103px;
    background: linear-gradient(0.75turn, #01a39f, #017abc);
  }

  #pc_main .sec_10 .area_title {
    max-width: 560px;
    margin: 0 auto 86px;
  }

  #pc_main .sec_10 .area_title:before {
    padding-top: 35.1428%;
  }

  #pc_main .sec_10 .cont {
    width: 508px;
    overflow: hidden;
    margin-bottom: 77px;
    border-radius: 30px 32px 0 0;
  }

  #pc_main .sec_10 .cont.c1 {
    float: left;
  }

  #pc_main .sec_10 .cont.c2 {
    float: right;
  }

  #pc_main .sec_10 .txt {
    position: relative;
    left: 30px;
    clear: both;
    max-width: 734px;
    margin: 0 auto;
  }

  #pc_main .sec_10 .txt:before {
    padding-top: 16.5363%;
  }

  #pc_main .sec_11 {
    position: relative;
    overflow: hidden;
    padding: 106px 0 0;
  }

  #pc_main .sec_11 .inner_wrap {
    overflow: hidden;
    background: url(../img/top/pc/sec_11_bg.webp) bottom center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_11 .area_title {
    max-width: 567px;
    margin: 0 auto 346px;
  }

  #pc_main .sec_11 .area_title:before {
    padding-top: 6.0734%;
  }

  #pc_main .sec_11 .btn_wrap {
    margin: 0 auto 193px;
  }

  #pc_main .sec_12 {
    position: relative;
    padding: 25px 0 14px;
    background: linear-gradient(0.75turn, #01a39f, #017abc);
  }

  #pc_main .sec_12 .area_title {
    max-width: 261px;
    margin: 0 auto 57px;
  }

  #pc_main .sec_12 .area_title:before {
    padding-top: 37.071%;
  }

  #pc_main .sec_12 .cont {
    position: relative;
    margin-bottom: 50px;
  }

  #pc_main .sec_12 .cont.c3 .link_wrap {
    position: absolute;
    top: 363px;
    right: 135px;
    display: block;
    width: 394px;
    overflow: hidden;
  }

  #pc_main .sec_12 .cont.c3 .link_wrap .link_btn {
    display: block;
  }

  #pc_main .sec_12 .cont.c3 .link_wrap .link_btn:hover img {
    filter: brightness(1.2);
  }

  #pc_main .sec_12 .txt {
    max-width: 755px;
    margin: 100px auto 48px;
  }

  #pc_main .sec_12 .txt:before {
    padding-top: 14.5454%;
  }

  #pc_main .sec_12 .txt2 {
    max-width: 491px;
    margin: 0 auto 80px;
  }

  #pc_main .sec_12 .txt2:before {
    padding-top: 11.9528%;
  }

  #pc_main .sec_12 .mask {
    position: absolute;
    top: -166px;
    width: 100%;
    height: 167px;
    clip-path: polygon(0% 0, 100% 100%, 0 100%);
    background: linear-gradient(0.75turn, #01a39f, #017abc);
    z-index: 10;
  }

  #pc_main .sec_12 .mm {
    margin-bottom: 64px;
  }

  #pc_main .sec_13 {
    position: relative;
    overflow: hidden;
    padding: 107px 0 100px;
    background: #d7e6f4;
  }

  #pc_main .sec_13 .area_title {
    max-width: 236px;
    margin: 0 auto 102px;
  }

  #pc_main .sec_13 .area_title::before {
    padding-top: 16.4429%;
  }

  #pc_main .sec_13 .cont {
    width: 100%;
    max-width: 824px;
    margin: 0 auto;
  }

  #pc_main .sec_13 .cont:before {
    padding-top: 40.2343%;
  }

  #pc_main .sec_13 .mask {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 675px;
    height: 100%;
    background: #eaf3fa;
    transform: skewX(22deg);
  }

  #pc_main .sec_14 {
    background: linear-gradient(0turn, #01a39f, #017abc);
  }

  #pc_main .sec_14 .inner_wrap {
    overflow: hidden;
    background: url(../img/top/pc/sec_14_bg2.webp) bottom center no-repeat;
    background-size: 100% auto;
  }

  #pc_main .sec_14 .area_title {
    max-width: 552px;
    margin: 114px auto 482px;
  }

  #pc_main .sec_14 .area_title::before {
    padding-top: 6.06936%;
  }

  #pc_main .sec_14 .btn_wrap {
    margin: 0 auto 139px;
  }

  #under {
    width: 100%;
    line-height: 1;
    overflow: hidden;
    padding: 38px 0 27px;
  }

  #under.checkform {
    padding: 38px 0 27px;
  }

  #under .f_inner {
    display: block;
    width: 100%;
    max-width: 1028px;
    margin: 0 auto 39px;
  }

  #under .f_logo {
    width: 14vw;
    max-width: 229px;
    margin: 0 auto 41px;
    position: relative;
  }

  #under .f_logo img {
    width: 100%;
    height: 100%;
  }

  #under .f_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 0;
  }

  #under .f_link p {
    font-size: 1.8rem;
    margin: 0 24px;
  }

  #service-section .footer-service {
    padding-top: 2.777vw;
  }

  #service-section .footer-service-title {
    font-size: 0.972vw;
  }

  #service-section .footer-service li {
    font-size: 0.972vw;
    margin-bottom: 1.111vw;
  }

  #under .copy {
    display: block;
    width: 100%;
    color: #333;
    font-size: 1.5rem;
    text-align: center;
  }

  #fixed_bar {
    display: none !important;
  }

  #form_area {
    padding: 89px 142px 62px 146px;
    border-radius: 34px;
  }

  #form_area .mv {
    position: relative;
    width: 100%;
    text-align: center;
    background: linear-gradient(0turn, #01a39f, #017abc);
    background-size: auto 100%;
  }

  #form_area .mv .mv_inner {
    position: relative;
    width: 100%;
    max-width: 1280px;
    height: auto;
    margin: 0 auto;
  }

  #form_area .mv img {
    width: 100%;
    max-width: 1280px;
    height: auto;
  }

  #form_area .mv .mv_tel {
    position: absolute;
    top: 78%;
    left: 15%;
    width: 20.7%;
    height: 6%;
  }

  #form_area .mv .mv_tel2 {
    position: absolute;
    top: 85%;
    left: 9.2%;
    width: 20.7%;
    height: 6%;
  }

  #form_area .mv .mv_tel img,
  #form_area .mv .mv_tel2 img {
    max-width: 100%;
  }

  #form_area .mv .mv_tel:hover img,
  #form_area .mv .mv_tel2:hover img {
    filter: grayscale(80%);
  }

  #form_area .form_inner {
    width: 640px;
    padding: 64px 0 128px;
    margin: 0 auto;
  }

  #form_area .area_title {
    font-size: 2.8rem;
    text-align: center;
    margin: 0 0 64px;
  }

  #form_area .mauticform-message {
    bottom: -48px;
    font-size: 16px;
  }

  #form_area .mauticform_wrapper {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }

  #form_area .mauticform-row {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 32px;
  }

  #mauticform_label_kyaouraimianjieowenihewase_o_weni_hewase_nei_rong::after {
    position: absolute;
    font-size: 16px;
    left: 43%;
    top: -24px;
    padding-top: 27px;
  }

  #form_area .mauticform-row label {
    width: 36%;
    font-size: 1.8rem;
    margin: 10px 0 0;
  }

  #form_area .mauticform-row input.mauticform-radiogrp-radio {
    margin: 0 8px 0 0;
    height: 40px;
  }

  #form_area .mauticform-radiogrp-row .mauticform-radiogrp-label {
    margin: 0;
  }

  #form_area .mauticform-row.mauticform-field-hidden {
    overflow: hidden;
    margin-bottom: 36px;
  }

  #form_area .mauticform-row.mauticform-field-hidden label {
    float: left;
  }

  #form_area .mauticform-row.mauticform-field-hidden input {
    float: right;
  }

  #form_area .mauticform-row:not(.mauticform-required) label::before {
    font-size: 11px;
    top: 9px;
    left: 153px;
    padding: 4px 5px;
  }

  #form_area .mauticform-row.mauticform-required .mauticform-label:after {
    font-size: 1.2rem;
    top: 10px;
  }

  #form_area .mauticform-row .mauticform-helpmessage {
    position: absolute;
    top: 8px;
    left: calc(36% - 64px);
    width: 40px;
    height: 20px;
    padding: 0;
    font-size: 1.2rem;
  }

  #form_area .mauticform-row input,
  #form_area .mauticform-row textarea {
    width: 57%;
    height: 40px;
    padding: 8px 20px;
    margin-top: 0;
    font-size: max(1.6rem, 16px);
  }

  #form_area .mauticform-row textarea {
    height: 156px;
  }

  #form_area .add_txt:after {
    content: "例）詳しい料金について知りたい";
    position: absolute;
    top: 11px;
    left: 36%;
    font-size: 1.4rem;
  }

  #form_area .mauticform-freehtml {
    display: block;
    width: 100%;
    text-align: center;
    margin: 90px auto 56px;
  }

  #form_area .mauticform-freehtml .mautic_txt1 {
    font-size: 1.4rem;
    line-height: 2;
  }

  #form_area .mauticform-row.mauticform-button-wrapper {
    position: relative;
    width: 316px;
    height: 69px;
    margin: 0 auto 32px;
  }

  #form_area button[type="submit"] {
    font-size: 2.3rem;
  }

  #form_area .wrap {
    position: relative;
  }

  #form_area .form_abs {
    position: absolute;
    top: 284px;
    left: 123px;
    width: 406px;
  }

  #form_area .form_abs .mauticform-row {
    margin-bottom: 0;
  }

  #form_area .form_abs .mauticform-row input {
    width: 100%;
    height: 46px;
    padding: 8px 20px;
    background: #fff;
  }

  #form_area .form_abs .mauticform-freehtml {
    display: block;
    width: 100%;
    text-align: center;
    margin: 43px auto 30px;
  }

  #form_area .form_abs .mauticform-freehtml .mautic_txt1 {
    color: #7f7f7f;
    font-size: 1.4rem;
    line-height: 1.8;
  }

  #form_area .form_abs .mauticform-freehtml .mautic_txt1 a {
    color: #7f7f7f;
  }

  #form_area .form_abs .mauticform-row.mauticform-button-wrapper {
    position: relative;
    width: 343px;
    height: 61px;
    margin: 0 auto;
  }

  #form_area .form_abs button[type="submit"] {
    font-size: 2.3rem;
  }

  #shiryoseikyu .wrap {
    width: 480px;
  }

  #shiryoseikyu .cont2 .box input[type="text"] {
    height: 32px;
  }

  /* フッターナビ */
  #under .f_inner {
    display: flex;
    gap: 32px;
    align-items: center;
  }

  #footer-nav {
    padding: 0;
    width: 100%;
    position: relative;
  }

  #footer-nav .footer-nav-container {
    margin: 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }

  #footer-nav .footer-nav-inner {
    font-size: 14px;
  }

  #footer-nav .footer-nav-inner .footer-nav-btn {
    width: fit-content;
    border-bottom: none;
    padding: 0 0 24px 0;
    font-weight: 700;
  }

  #footer-nav .footer-nav-inner .footer-nav-inner-child {
    font-size: 14px;
  }

  #footer-nav .footer-nav-inner-child .footer-nav-inner-menu {
    padding: 0;
    margin: 0 0 24px 24px;
    border-bottom: none;
  }

  #footer-nav .footer-nav-inner-child li a {
    display: inline-block;
    width: 100%;
  }

  #footer-nav .footer-cta-btn {
    display: block;
    width: fit-content;
    position: absolute;
    right: 0;
    bottom: -30px;
  }

  #footer-nav .footer-cta-btn .btn {
    font-size: 16px;
    padding: 16px 24px;
    width: 200px;
    border-radius: 50px;
    display: block;
    margin-top: 12px;
  }
}

/* グローバルナビゲーション用CSS - 固有クラス名 */
/* PCナビゲーション */
/* #upper .ourai-contact-item .btn {
    width: 18vw;
    max-width: 168px;
}

#upper .ourai-contact-item .navbtn1 {
    background: var(--gradient-accent);
}

.ourai-nav-list {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    list-style: none;
}

#upper .ourai-nav-item .link_btn {
    padding-bottom: 3px;
}

.ourai-nav-item {
    margin-left: 24px;
}

.ourai-nav-link {
    font-size: 16px;
    font-weight: 500;
    color: var(--color-navy);
    transition: 0.3s;
    position: relative;
    text-decoration: none;
}

.ourai-nav-link:hover {
    filter: brightness(1.6);
} */

/* 新・PCナビゲーション */

#upper .ourai-contact-item .btn {
  width: 18vw;
  max-width: 168px;
}

#upper .ourai-contact-item .navbtn1 {
  background: var(--gradient-accent);
}

.ourai-nav-list-new {
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ourai-nav-list-new .ourai-nav-item-new {
  position: relative;
}

.ourai-nav-item-new .ourai-nav-item-inner-new {
  list-style-type: none;
  padding: 24px 32px 24px 24px;
  position: absolute;
  top: 100%;
  left: 0;
  background: rgba(255 255 255 / 0.75);
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.5s ease-out;
  width: fit-content;
}

.ourai-nav-item-new:hover .ourai-nav-item-inner-new {
  transform: scaleY(1);
}

.ourai-nav-item-new .ourai-nav-item-inner-new li {
  margin-top: 24px;
}

.ourai-nav-item-new .ourai-nav-link::after {
  content: "";
  position: absolute;
  bottom: -6px;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--gradient-primary);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease-out;
}

.ourai-nav-item-new .ourai-nav-link:hover::after {
  transform: scaleX(1);
}

.ourai-nav-btn-cont-new {
  display: flex;
  gap: 24px;
}

#upper .ourai-nav-item-new .link_btn {
  padding-bottom: 3px;
}

.ourai-nav-link {
  font-size: 16px;
  font-weight: 400;
  color: var(--color-navy);
  transition: 0.5s;
  position: relative;
  text-decoration: none;
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.ourai-nav-link:hover {
  filter: brightness(1.6);
}

/* ハンバーガーメニュー（SP用） */
.ourai-hamburger {
  display: none;
  width: 30px;
  height: 24px;
  position: relative;
  cursor: pointer;
  z-index: 1001;
}

.ourai-hamburger span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #333;
  border-radius: 2px;
  transition: all 0.3s;
}

.ourai-hamburger span:nth-child(1) {
  top: 0;
}

.ourai-hamburger span:nth-child(2) {
  top: 11px;
}

.ourai-hamburger span:nth-child(3) {
  bottom: 0;
}

.ourai-hamburger.ourai-active span:nth-child(1) {
  transform: translateY(11px) rotate(45deg);
}

.ourai-hamburger.ourai-active span:nth-child(2) {
  opacity: 0;
}

.ourai-hamburger.ourai-active span:nth-child(3) {
  transform: translateY(-11px) rotate(-45deg);
}

/* SPナビゲーション */
/* .ourai-sp-nav {
    display: none;
    position: fixed;
    text-align: center;
    top: 0;
    right: -100%;
    width: 53%;
    max-width: 300px;
    height: auto;
    background: rgb(255 255 255 / 88%);
    z-index: 1000;
    transition: right 0.3s;
    overflow-y: auto;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.ourai-sp-nav.ourai-active {
    right: 0;
}

.ourai-sp-nav-inner {
    padding: 14vw 4vw 8vw;
}

.ourai-sp-nav-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ourai-sp-nav-item {
    margin-bottom: 3.8vw;
}

.ourai-sp-nav-item:last-child {
    margin-bottom: 0;
}

.ourai-sp-nav-link {
    display: block;
    font-size: 3.8vw;
    font-weight: 400;
    color: var(--color-navy);
    padding: 10px 0;
    text-decoration: none;
}

.ourai-sp-contact-item {
    margin-top: 30px;
    text-align: center;
}

#upper .ourai-sp-nav-item .btn {
    margin: 0 auto;
    width: 100%;
    height: auto;
    padding: 3.2vw 0;
    font-size: 3.7vw;
} */

/* 新・SPナビゲーション */
.ourai-sp-nav {
  display: none;
  position: fixed;
  text-align: left;
  top: 0;
  right: -100%;
  width: 53%;
  max-width: 300px;
  height: auto;
  background: rgb(255 255 255 / 88%);
  z-index: 1000;
  transition: right 0.3s;
  overflow-y: auto;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.ourai-sp-nav.ourai-active {
  right: 0;
}

.ourai-sp-nav-inner-new {
  padding: 14vw 4vw 8vw;
}

.ourai-sp-nav-list-new {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ourai-sp-nav-item-new {
  margin-bottom: 3.8vw;
  position: relative;
}

.ourai-sp-nav-item-new .nav-btn-sp {
  width: 4.102vw;
  height: 4.102vw;
  border-radius: 25px;
  border: 1px #000080 solid;
  position: relative;
  display: inline-block;
}

.ourai-sp-nav-item-new .nav-btn-sp::before {
  content: "";
  background: #000080;
  width: 2.564vw;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.ourai-sp-nav-item-new .ourai-sp-nav-item-btn {
  background-color: rgba(255, 255, 255, 0);
  border: none;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-right: 1.025vw;
}

.ourai-sp-nav .ourai-sp-nav-item-btn .nav-btn-sp::after {
  content: "";
  background: #000080;
  width: 2.564vw;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform 0.5s ease-out;
}

.ourai-sp-nav .ourai-sp-nav-item-btn.ourai-active2 .nav-btn-sp::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

.ourai-sp-nav .ourai-sp-nav-item-new .ourai-nav-item-inner-new {
  list-style-type: none;
  padding: 0 1.025vw 0 6.153vw;
  background: rgba(255 255 255 / 0);
  width: fit-content;
  font-size: 3.8vw;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.7s ease-out, padding 0.7s ease-out;
}

.ourai-sp-nav-item-new .ourai-nav-item-inner-new.ourai-active2 {
  max-height: 320px;
}

.ourai-sp-nav-item-new .ourai-nav-item-inner-new a {
  color: #000080;
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.ourai-sp-nav-item-new .ourai-nav-item-inner-new li {
  margin-top: 24px;
}

.ourai-sp-nav-item-new:last-child {
  margin-bottom: 0;
}

.ourai-sp-nav-link,
.nav-btn-sp-text {
  display: block;
  font-size: 3.8vw;
  font-weight: 400;
  color: var(--color-navy);
  padding: 10px 0;
  text-decoration: none;
}

.ourai-sp-contact-item-new {
  margin-top: 30px;
  text-align: center;
}

#upper .ourai-sp-nav-item-new .btn {
  margin: 0 auto;
  width: 100%;
  height: auto;
  padding: 3.2vw 0;
  font-size: 3.7vw;
}

/* オーバーレイ */
.ourai-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}

.ourai-overlay.ourai-active {
  display: block;
}

@media (max-width: 1279px) {
  .ourai-nav-item {
    margin-left: 1.5vw;
  }

  .ourai-nav-link {
    font-size: 1.6rem;
  }
}

/* =============================================== */
/* グローバルナビゲーション SP用 スタイル          */
/* =============================================== */
@media screen and (max-width: 640px) {
  .sp_cont {
    display: block;
    /* SP表示時に block にする */
  }

  /* #upper .ourai-sp-nav-item .navbtn1 {
        background: var(--gradient-accent);
    }

    #upper .ourai-sp-nav-item .link_btn {
        line-height: 2;
    } */

  #upper .ourai-sp-nav-item-new .navbtn1 {
    background: var(--gradient-accent);
  }

  #upper .ourai-sp-nav-item-new .link_btn {
    line-height: 2;
  }

  /*trials
===============================*/
  /* 共通 */
  .trials .hero {
    height: fit-content !important;
  }

  .trials-title {
    font-size: 5.12vw;
    margin: 0 0 9.56vw;
    line-height: 1.4;
  }

  .trials-title .sp-cont {
    display: block;
  }

  .trials-container {
    display: block;
    padding: 0 3.18vw;
    margin: 0 auto 18.16vw;
  }

  .trials-container section {
    width: 100%;
    height: auto;
    padding: 10.25vw 0 0;
    margin-bottom: 16.14vw;
  }

  .trials-container section h2 {
    margin: 6.15vw auto 8.2vw;
    font-size: 8.2vw;
  }

  .trials-container section .trialbtn {
    font-size: 5.12vw;
  }

  .trials-container section .subcatch {
    font-size: 5.12vw;
  }

  /* 1ヶ月無料トライアル */
  .trials-container .onemonthtrial {
    box-shadow: -2.05vw 2.05vw 1.02vw rgba(0, 0, 0, 0.25);
    margin-bottom: 8.2vw;
  }

  .trials-container .onemonthtrial figure {
    width: 90%;
    margin: 8.2vw auto 10.25vw;
  }

  /* 無料お試し面接 */
  .trials-container .interviewtrial {
    box-shadow: 2.05vw 2.05vw 1.02vw rgba(0, 0, 0, 0.25);
  }

  .trials-container .interviewtrial figure {
    margin: 8.2vw auto 4.1vw;
  }
}

@media screen and (max-width: 768px) {
  #upper .inner.gnav {
    justify-content: space-between;
    padding: 0 3vw 0 5vw;
  }

  .ourai-logo {
    width: 140px;
  }
}
