html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
caption,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1.4;
  letter-spacing: 0.04em;
  font-weight: 400;
  font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

body * {
  box-sizing: border-box;
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  color: #333;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

main {
  display: block;
}

ol,
li {
  list-style-type: none;
}

body {
  color: #333;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: min( (20 / 1080) * 100vw , 20px );
  margin: 0;
  letter-spacing: 0.08em;
  font-feature-settings: "palt" on;
  text-align: justify;
}

.s_btn {
  transition: filter 0.3s;
}

.s_btn:hover {
  filter: brightness(110%);
  transition: filter 0.3s;
}

@media screen and (min-width: 768px) {
  .only_sp:not(:root) {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .only_pc:not(:root) {
    display: none !important;
  }
}

.block {
  display: block;
}

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

@media screen and (min-width: 768px) {
  .outer {
    overflow-x: hidden;
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}

.s_blue {
  color: #005EAE;
}

.green {
  color: #08BF5A;
}

.s_orange {
  color: #FF9129;
}

.s_red {
  color: #F03A3A;
}

.s_yellow {
  color: #FCEE21;
}

.s_white {
  color: #fff;
}

.relative {
  position: relative;
}

figure {
  margin: 0;
}

img {
  width: 100%;
  display: block;
}

@media screen and (min-width: 768px) {
  .wrapper {
    min-width: min( (1920 / 1080) * 100vw , 1920px );
    margin: 0 auto;
  }
}

.s_bold {
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .dot-text {
    padding-top: 0.4em;
    background-position: top left -2px;
    background-repeat: repeat-x;
    background-size: 1.3em 0.6em;
    background-image: radial-gradient(0.1em 0.1em at center center, #EB5505, #EB5505 100%, transparent);
  }
}

.head {
  background-color: #fff;
  box-shadow: 0px min( (2 / 1080) * 100vw , 2px ) min( (2 / 1080) * 100vw , 2px ) 0px rgba(0, 0, 0, 0.08);
}
.head .head_inner {
  display: flex;
  align-items: center;
  height: min( (72 / 1080) * 100vw , 72px );
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
.head .head_logo {
  flex: 0 0 min( (150 / 1080) * 100vw , 150px );
}
@media screen and (max-width: 767px) {
  .head {
    box-shadow: 0px min( (4 / 750) * 100vw, 4px ) min( (4 / 750) * 100vw, 4px ) 0px rgba(0, 0, 0, 0.08);
  }
  .head .head_inner {
    align-items: center;
    justify-content: center;
    height: min( (96 / 750) * 100vw, 96px );
    max-width: 100%;
  }
  .head .head_logo {
    flex: 0 0 min( (240 / 750) * 100vw, 240px );
  }
}

.foot {
  padding: min( (40 / 1080) * 100vw , 40px ) 0 min( (16 / 1080) * 100vw , 16px );
  border-top: min( (1 / 1080) * 100vw , 1px ) solid #005EAE;
}
.foot .foot_list {
  display: flex;
  justify-content: center;
  gap: min( (40 / 1080) * 100vw , 40px );
}
.foot .foot_item a {
  font-size: min( (14 / 1080) * 100vw , 14px );
  font-weight: 700;
  line-height: 180%;
}
.foot .foot_logo {
  width: min( (182 / 1080) * 100vw , 182px );
  margin: min( (24 / 1080) * 100vw , 24px ) auto;
}
.foot .foot_address {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  text-align: center;
}
.foot .foot_copy {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .foot {
    padding: min( (56 / 750) * 100vw, 56px ) 0 min( (152 / 750) * 100vw, 152px );
    border-top: min( (2 / 750) * 100vw, 2px ) solid #005EAE;
  }
  .foot .foot_list {
    display: block;
  }
  .foot .foot_item {
    margin-bottom: min( (24 / 750) * 100vw, 24px );
    text-align: center;
  }
  .foot .foot_item a {
    font-size: min( (26 / 750) * 100vw, 26px );
  }
  .foot .foot_logo {
    width: min( (360 / 750) * 100vw, 360px );
    margin: min( (32 / 750) * 100vw, 32px ) auto min( (56 / 750) * 100vw, 56px );
  }
  .foot .foot_address {
    font-size: min( (20 / 750) * 100vw, 20px );
  }
  .foot .foot_copy {
    font-size: min( (20 / 750) * 100vw, 20px );
  }
}

.sec_fv {
  position: relative;
}
.sec_fv .sec_fv_ttl {
  width: min( (499 / 1080) * 100vw , 499px );
  position: absolute;
  left: min( (460 / 1080) * 100vw , 460px );
  top: min( (38 / 1080) * 100vw , 38px );
}
.sec_fv .sec_fv_fig_01 {
  width: min( (491 / 1080) * 100vw , 491px );
  position: absolute;
  left: min( (969 / 1080) * 100vw , 969px );
  top: min( (434 / 1080) * 100vw , 434px );
}
.sec_fv .sec_fv_fig_02 {
  width: min( (405 / 1080) * 100vw , 405px );
  position: absolute;
  left: min( (460 / 1080) * 100vw , 460px );
  top: min( (278 / 1080) * 100vw , 278px );
  background-color: background-color: rgba(0, 0, 255, 0.219);
}
@media screen and (max-width: 767px) {
  .sec_fv {
    position: relative;
  }
  .sec_fv .sec_fv_ttl {
    width: min( (432 / 750) * 100vw, 432px );
    left: min( (60 / 750) * 100vw, 60px );
    top: min( (40 / 750) * 100vw, 40px );
  }
  .sec_fv .sec_fv_fig_01 {
    width: min( (704 / 750) * 100vw, 704px );
    left: min( (15 / 750) * 100vw, 15px );
    top: min( (593 / 750) * 100vw, 593px );
  }
  .sec_fv .sec_fv_fig_02 {
    width: 100%;
    position: static;
    padding-bottom: 1px;
  }
}

.sec_01 .sec_01_top {
  background-image: url("../images/bg_sec01_01_pc.jpg");
  background-size: min( (1920 / 1080) * 100vw , 1920px ) min( (266 / 1080) * 100vw , 266px );
  background-position: top center;
  background-repeat: no-repeat;
  height: min( (266 / 1080) * 100vw , 266px );
  padding: min( (60 / 1080) * 100vw , 60px ) 0 0;
}
.sec_01 .sec_01_txt_01 {
  font-size: min( (28 / 1080) * 100vw , 28px );
  font-weight: 700;
  line-height: 160%;
  color: #fff;
  text-shadow: min( (1 / 1080) * 100vw , 1px ) min( (1 / 1080) * 100vw , 1px ) min( (2 / 1080) * 100vw , 2px ) rgba(0, 0, 0, 0.45);
  letter-spacing: 0.05em;
  margin-left: min( (899 / 1080) * 100vw , 899px );
}
.sec_01 .sec_01_mid {
  padding-bottom: min( (65 / 1080) * 100vw , 65px );
}
.sec_01 .sec_01_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_01 .sec_01_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_01 .sec_01_txt_02 {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 140%;
  text-align: center;
  letter-spacing: 0.05em;
  margin: min( (40 / 1080) * 100vw , 40px ) 0 min( (30 / 1080) * 100vw , 30px );
}
.sec_01 .sec_01_list {
  display: flex;
  justify-content: space-between;
}
.sec_01 .sec_01_item {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  letter-spacing: 0.05em;
  flex: 0 0 min( (485 / 1080) * 100vw , 485px );
  background-image: url("../images/bg_sec01_02_pc.png");
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  height: min( (160 / 1080) * 100vw , 160px );
  padding-top: min( (38 / 1080) * 100vw , 38px );
}
.sec_01 .sec_01_bottom {
  background-color: #F0F0F0;
  padding: min( (96 / 1080) * 100vw , 96px ) 0 0;
}
.sec_01 .sec_01_img {
  width: min( (1000 / 1080) * 100vw , 1000px );
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sec_01 .sec_01_top {
    background-image: url("../images/bg_sec01_01_sp.jpg");
    background-size: cover;
    height: min( (380 / 750) * 100vw, 380px );
    padding: min( (39 / 750) * 100vw, 39px ) 0 0;
  }
  .sec_01 .sec_01_txt_01 {
    font-size: min( (36 / 750) * 100vw, 36px );
    text-shadow: min( (1 / 750) * 100vw, 1px ) min( (1 / 750) * 100vw, 1px ) min( (2 / 750) * 100vw, 2px ) rgba(0, 0, 0, 0.45);
    margin-left: min( (394 / 750) * 100vw, 394px );
  }
  .sec_01 .sec_01_mid {
    padding-bottom: min( (91 / 750) * 100vw, 91px );
  }
  .sec_01 .sec_01_txt_02 {
    font-size: min( (48 / 750) * 100vw, 48px );
    margin: min( (40 / 750) * 100vw, 40px ) 0 min( (30 / 750) * 100vw, 30px );
  }
  .sec_01 .sec_01_item {
    font-size: min( (30 / 750) * 100vw, 30px );
    line-height: 180%;
    letter-spacing: 0.02em;
    flex: 0 0 min( (306 / 750) * 100vw, 306px );
    background-image: url("../images/bg_sec01_02_sp.png");
    height: min( (255 / 750) * 100vw, 255px );
    padding-top: min( (39 / 750) * 100vw, 39px );
  }
  .sec_01 .sec_01_bottom {
    padding: min( (120 / 750) * 100vw, 120px ) 0 0;
  }
  .sec_01 .sec_01_img {
    width: min( (630 / 750) * 100vw, 630px );
  }
}

.sec_02 {
  background-image: url("../images/bg_sec02_01.png");
  background-size: min( (20 / 1080) * 100vw , 20px ) min( (20 / 1080) * 100vw , 20px );
  background-position: center;
  background-repeat: repeat;
  padding: min( (80 / 1080) * 100vw , 80px ) 0 0;
}
.sec_02 .sec_02_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_02 .sec_02_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_02 .sec_02_ttl {
  text-align: center;
  background-image: url("../images/bg_sec02_03_pc.png");
  background-size: min( (446 / 1080) * 100vw , 446px ) min( (21 / 1080) * 100vw , 21px );
  background-position: bottom center;
  background-repeat: no-repeat;
  padding: 0 0 min( (4 / 1080) * 100vw , 4px );
  margin: 0 0 min( (73 / 1080) * 100vw , 73px );
}
.sec_02 .sec_02_ttl_sub {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 140%;
  display: block;
  margin: 0 0 min( (7 / 1080) * 100vw , 7px );
}
.sec_02 .sec_02_ttl_main {
  font-size: min( (48 / 1080) * 100vw , 48px );
  font-weight: 700;
  line-height: 125%;
  display: block;
}
.sec_02 .sec_02_ttl_main .small {
  font-size: min( (32 / 1080) * 100vw , 32px );
}
.sec_02 .sec_02_flex {
  display: flex;
  justify-content: space-between;
  margin: 0 0 min( (73 / 1080) * 100vw , 73px );
}
.sec_02 .sec_02_bg {
  background-image: url("../images/bg_sec02_02_pc.png");
  background-size: min( (1920 / 1080) * 100vw , 1920px ) min( (283 / 1080) * 100vw , 283px );
  background-position: bottom center;
  background-repeat: no-repeat;
  height: min( (283 / 1080) * 100vw , 283px );
  position: relative;
}
.sec_02 .sec_02_bg::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_arrow_03.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (56 / 1080) * 100vw , 56px );
  height: min( (40 / 1080) * 100vw , 40px );
  top: max( (-55 / 1080) * 100vw , -55px );
  left: 50%;
  transform: translateX(-50%);
}
.sec_02 .sec_02_txt_01 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  padding: min( (25 / 1080) * 100vw , 25px ) 0 0;
}
.sec_02 .sec_02_txt_label {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 130%;
  text-align: center;
  color: #fff;
  width: min( (320 / 1080) * 100vw , 320px );
  margin: min( (8 / 1080) * 100vw , 8px ) auto 0;
  background-color: #333;
}
.sec_02 .sec_02_txt_label .small {
  font-size: min( (20 / 1080) * 100vw , 20px );
}
.sec_02 .sec_02_txt_02 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  margin: min( (32 / 1080) * 100vw , 32px ) 0 0;
}
@media screen and (max-width: 767px) {
  .sec_02 {
    background-size: min( (40 / 750) * 100vw, 40px ) min( (40 / 750) * 100vw, 40px );
    padding: min( (80 / 750) * 100vw, 80px ) 0 0;
  }
  .sec_02 .sec_02_ttl {
    text-align: center;
    background-image: url("../images/bg_sec02_03_sp.png");
    background-size: min( (604 / 750) * 100vw, 604px ) min( (29 / 750) * 100vw, 29px );
    padding: 0 0 min( (8 / 750) * 100vw, 8px );
    margin: 0 0 min( (128 / 750) * 100vw, 128px );
  }
  .sec_02 .sec_02_ttl_sub {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin: 0 0 min( (9 / 750) * 100vw, 9px );
  }
  .sec_02 .sec_02_ttl_main {
    font-size: min( (64 / 750) * 100vw, 64px );
  }
  .sec_02 .sec_02_ttl_main .small {
    font-size: min( (48 / 750) * 100vw, 48px );
  }
  .sec_02 .sec_02_flex {
    display: block;
    margin: 0 0 min( (80 / 750) * 100vw, 80px );
  }
  .sec_02 .sec_02_bg {
    background-image: url("../images/bg_sec02_02_sp.png");
    background-size: contain;
    height: min( (480 / 750) * 100vw, 480px );
  }
  .sec_02 .sec_02_bg::after {
    width: min( (80 / 750) * 100vw, 80px );
    height: min( (56 / 750) * 100vw, 56px );
    top: max( (-80 / 750) * 100vw, -80px );
  }
  .sec_02 .sec_02_txt_01 {
    font-size: min( (32 / 750) * 100vw, 32px );
    padding: 0 0;
  }
  .sec_02 .sec_02_txt_label {
    font-size: min( (48 / 750) * 100vw, 48px );
    width: min( (460 / 750) * 100vw, 460px );
    margin: min( (8 / 750) * 100vw, 8px ) auto 0;
  }
  .sec_02 .sec_02_txt_label .small {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .sec_02 .sec_02_txt_02 {
    font-size: min( (32 / 750) * 100vw, 32px );
    line-height: 150%;
    margin: min( (48 / 750) * 100vw, 48px ) 0 0;
  }
}

.sec_03 {
  position: relative;
  background-color: #005EAE;
  padding: 0 0 min( (120 / 1080) * 100vw , 120px );
  margin: -1px auto 0;
}
.sec_03 .sec_03_ttl {
  text-align: center;
  position: absolute;
  top: min( (128 / 1080) * 100vw , 128px );
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
.sec_03 .sec_03_ttl_sub {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  color: #F03A3A;
  display: block;
}
.sec_03 .sec_03_ttl_main {
  font-size: min( (48 / 1080) * 100vw , 48px );
  font-weight: 700;
  line-height: 140%;
  color: #005EAE;
  display: block;
}
.sec_03 .sec_03_ttl_main .small {
  font-size: min( (20 / 1080) * 100vw , 20px );
  line-height: 160%;
}
.sec_03 .sec_03_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_03 .sec_03_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_03 .sec_03_flex {
  width: min( (895 / 1080) * 100vw , 895px );
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.sec_03 .sec_03_txt_01 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  color: #fff;
}
.sec_03 .sec_03_txt_02 {
  font-size: min( (40 / 1080) * 100vw , 40px );
  font-weight: 700;
  line-height: 140%;
  color: #fff;
}
.sec_03 .sec_03_fig {
  flex: 0 0 min( (465 / 1080) * 100vw , 465px );
}
@media screen and (max-width: 767px) {
  .sec_03 {
    padding: 0 0 min( (120 / 750) * 100vw, 120px );
  }
  .sec_03 .sec_03_ttl {
    top: min( (120 / 750) * 100vw, 120px );
  }
  .sec_03 .sec_03_ttl_sub {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .sec_03 .sec_03_ttl_main {
    font-size: min( (64 / 750) * 100vw, 64px );
  }
  .sec_03 .sec_03_ttl_main .small {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .sec_03 .sec_03_flex {
    width: 100%;
    margin: min( (50 / 750) * 100vw, 50px ) auto 0;
    display: block;
  }
  .sec_03 .sec_03_txt_01 {
    font-size: min( (32 / 750) * 100vw, 32px );
    text-align: center;
  }
  .sec_03 .sec_03_txt_02 {
    font-size: min( (56 / 750) * 100vw, 56px );
    text-align: center;
    margin: 0 0 min( (40 / 750) * 100vw, 40px );
  }
  .sec_03 .sec_03_fig {
    flex: 0 0 min( (465 / 1080) * 100vw , 465px );
  }
}

.sec_04 {
  position: relative;
  background: linear-gradient(180deg, #035dae 0%, #035dae 5%, #E8F5FF 5%, #E8F5FF 100%);
}
.sec_04 .sec_04_img_01 {
  margin: -1px auto 0;
  background: #035dae;
}
.sec_04 .sec_04_ttl {
  background-image: url("../images/bg_sec04_01_pc.png");
  background-size: min( (508 / 1080) * 100vw , 508px ) min( (316 / 1080) * 100vw , 316px );
  background-position: bottom center;
  background-repeat: no-repeat;
  width: min( (508 / 1080) * 100vw , 508px );
  height: min( (316 / 1080) * 100vw , 316px );
  color: #fff;
  text-align: center;
  padding: min( (45 / 1080) * 100vw , 45px ) 0 0;
  position: absolute;
  top: min( (438 / 1080) * 100vw , 438px );
  left: 50%;
  transform: translateX(-50%);
}
.sec_04 .sec_04_ttl_sub {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 100%;
  display: block;
  margin-bottom: min( (12 / 1080) * 100vw , 12px );
}
.sec_04 .sec_04_ttl_sub_box {
  display: inline-block;
  background-color: #F03A3A;
  color: #fff;
  border-radius: min( (8 / 1080) * 100vw , 8px );
  padding: min( (2 / 1080) * 100vw , 2px ) min( (8 / 1080) * 100vw , 8px );
  margin: 0 min( (4 / 1080) * 100vw , 4px ) 0 0;
}
.sec_04 .sec_04_ttl_main_01 {
  font-size: min( (40 / 1080) * 100vw , 40px );
  font-weight: 700;
  line-height: 125%;
  display: block;
}
.sec_04 .sec_04_ttl_main_01 .small {
  font-size: min( (20 / 1080) * 100vw , 20px );
}
.sec_04 .sec_04_ttl_main_02 {
  font-size: min( (48 / 1080) * 100vw , 48px );
  font-weight: 700;
  line-height: 140%;
}
.sec_04 .sec_04_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
  padding: min( (124 / 1080) * 100vw , 124px ) 0 0;
}
@media screen and (max-width: 767px) {
  .sec_04 .sec_04_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_04 .sec_04_txt_01 {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  margin-bottom: min( (40 / 1080) * 100vw , 40px );
}
.sec_04 .sec_04_boeder {
  margin: min( (56 / 1080) * 100vw , 56px ) 0 min( (40 / 1080) * 100vw , 40px );
  padding: 0 0 min( (40 / 1080) * 100vw , 40px );
  border-bottom: min( (1 / 1080) * 100vw , 1px ) solid #005EAE;
}
.sec_04 .sec_04_txt_02 {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  color: #005EAE;
  position: relative;
  margin: 0 0 min( (16 / 1080) * 100vw , 16px );
}
.sec_04 .sec_04_txt_02:before {
  content: "";
  display: block;
  background-color: #005EAE;
  width: min( (1000 / 1080) * 100vw , 1000px );
  height: min( (1 / 1080) * 100vw , 1px );
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.sec_04 .sec_04_txt_02 .inner {
  background-color: #E8F5FF;
  display: inline-block;
  z-index: 1;
  position: relative;
  padding: 0 min( (24 / 1080) * 100vw , 24px );
}
.sec_04 .sec_04_txt_03 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
}
.sec_04 .sec_04_label {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 140%;
  width: min( (362 / 1080) * 100vw , 362px );
  padding: min( (2 / 1080) * 100vw , 2px ) min( (8 / 1080) * 100vw , 8px );
  background-color: #FF9129;
  color: #fff;
  margin: min( (8 / 1080) * 100vw , 8px ) auto 0;
  letter-spacing: 0.03em;
}
.sec_04 .sec_04_img_02 {
  width: min( (112 / 1080) * 100vw , 112px );
  margin: 0 auto min( (8 / 1080) * 100vw , 8px );
}
.sec_04 .sec_04_bottom {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min( (40 / 1080) * 100vw , 40px );
  padding-bottom: min( (50 / 1080) * 100vw , 50px );
}
.sec_04 .sec_04_txt_04 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
}
.sec_04 .sec_04_txt_05 {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 140%;
  text-align: center;
  color: #005EAE;
}
.sec_04 .sec_04_bottom_img {
  flex: 0 0 min( (630 / 1080) * 100vw , 630px );
}
@media screen and (max-width: 767px) {
  .sec_04 .sec_04_ttl {
    background-image: url("../images/bg_sec04_01_sp.png");
    background-size: min( (646 / 750) * 100vw, 646px ) min( (447 / 750) * 100vw, 447px );
    width: min( (646 / 750) * 100vw, 646px );
    height: min( (447 / 750) * 100vw, 447px );
    padding: min( (40 / 750) * 100vw, 40px ) 0 0;
    position: absolute;
    top: min( (588 / 750) * 100vw, 588px );
  }
  .sec_04 .sec_04_ttl_sub {
    font-size: min( (32 / 750) * 100vw, 32px );
    line-height: 140%;
    margin-bottom: min( (10 / 750) * 100vw, 10px );
  }
  .sec_04 .sec_04_ttl_sub_box {
    border-radius: min( (8 / 750) * 100vw, 8px );
    padding: min( (2 / 750) * 100vw, 2px ) min( (8 / 750) * 100vw, 8px ) 0 min( (8 / 1080) * 100vw , 8px );
    margin: 0 min( (4 / 1080) * 100vw , 4px ) 0 0;
  }
  .sec_04 .sec_04_ttl_main_01 {
    font-size: min( (56 / 750) * 100vw, 56px );
  }
  .sec_04 .sec_04_ttl_main_01 .small {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .sec_04 .sec_04_ttl_main_02 {
    font-size: min( (64 / 750) * 100vw, 64px );
  }
  .sec_04 .sec_04_outer {
    padding: min( (400 / 750) * 100vw, 400px ) 0 0;
  }
  .sec_04 .sec_04_txt_01 {
    font-size: min( (36 / 750) * 100vw, 36px );
    margin-bottom: min( (40 / 750) * 100vw, 40px );
  }
  .sec_04 .sec_04_boeder {
    margin: 0 0 min( (56 / 750) * 100vw, 56px );
    padding: 0 0 min( (40 / 750) * 100vw, 40px );
    border-bottom: min( (1 / 750) * 100vw, 1px ) solid #005EAE;
  }
  .sec_04 .sec_04_txt_02 {
    font-size: min( (36 / 750) * 100vw, 36px );
    margin: 0 0 min( (16 / 750) * 100vw, 16px );
  }
  .sec_04 .sec_04_txt_02:before {
    width: min( (630 / 750) * 100vw, 630px );
    height: min( (1 / 750) * 100vw, 1px );
  }
  .sec_04 .sec_04_txt_02 .inner {
    padding: 0 min( (24 / 750) * 100vw, 24px );
  }
  .sec_04 .sec_04_txt_03 {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .sec_04 .sec_04_label {
    font-size: min( (48 / 750) * 100vw, 48px );
    width: min( (536 / 750) * 100vw, 536px );
    padding: min( (2 / 750) * 100vw, 2px ) min( (10 / 750) * 100vw, 10px );
    margin: min( (8 / 750) * 100vw, 8px ) auto 0;
  }
  .sec_04 .sec_04_img_02 {
    width: min( (156 / 750) * 100vw, 156px );
    margin: 0 auto min( (24 / 750) * 100vw, 24px );
  }
  .sec_04 .sec_04_bottom {
    display: block;
    padding-bottom: min( (80 / 750) * 100vw, 80px );
  }
  .sec_04 .sec_04_txt_04 {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .sec_04 .sec_04_txt_05 {
    font-size: min( (48 / 750) * 100vw, 48px );
    margin-bottom: min( (40 / 750) * 100vw, 40px );
  }
}

.sec_05 {
  background-color: #E8F5FF;
  padding: min( (120 / 1080) * 100vw , 120px ) 0;
}
.sec_05 .sec_05_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_05 .sec_05_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_05 .sec_05_flex {
  display: flex;
  justify-content: space-between;
}
.sec_05 .sec_05_box {
  flex: 0 0 min( (480 / 1080) * 100vw , 480px );
}
.sec_05 .sec_05_label {
  border-radius: min( (16 / 1080) * 100vw , 16px );
  background: var(--accent-blue-primary, #005EAE);
  padding: min( (16 / 1080) * 100vw , 16px );
  margin-bottom: min( (24 / 1080) * 100vw , 24px );
}
.sec_05 .sec_05_txt_01 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  color: #fff;
  text-align: center;
}
.sec_05 .sec_05_txt_02 {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 140%;
  color: #fff;
  text-align: center;
}
.sec_05 .sec_05_txt_02 .small {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
}
.sec_05 .sec_05_txt_03 {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 160%;
  margin: min( (40 / 1080) * 100vw , 40px ) auto 0;
  text-align: center;
}
.sec_05 .sec_05_txt_03 span {
  display: inline-block;
  background: linear-gradient(transparent 70%, #FCEE21 70%);
}
.sec_05 .sec_05_img.-img1 {
  width: min( (310 / 1080) * 100vw , 310px );
  margin: 0 auto;
}
.sec_05 .sec_05_img.-img2 {
  width: min( (272 / 1080) * 100vw , 272px );
  margin: 0 auto;
}
.sec_05 .sec_05_img.-img3 {
  width: min( (696 / 1080) * 100vw , 696px );
  margin: min( (34 / 1080) * 100vw , 34px ) auto 0;
}
.sec_05 .sec_05_note {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  margin-top: min( (40 / 1080) * 100vw , 40px );
}
@media screen and (max-width: 767px) {
  .sec_05 {
    padding: min( (120 / 750) * 100vw, 120px ) 0;
  }
  .sec_05 .sec_05_flex {
    display: block;
  }
  .sec_05 .sec_05_box {
    margin-top: min( (80 / 750) * 100vw, 80px );
  }
  .sec_05 .sec_05_label {
    border-radius: min( (16 / 750) * 100vw, 16px );
    padding: min( (16 / 750) * 100vw, 16px );
    margin-bottom: min( (40 / 750) * 100vw, 40px );
  }
  .sec_05 .sec_05_txt_01 {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .sec_05 .sec_05_txt_02 {
    font-size: min( (48 / 750) * 100vw, 48px );
  }
  .sec_05 .sec_05_txt_02 .small {
    font-size: min( (20 / 750) * 100vw, 20px );
  }
  .sec_05 .sec_05_txt_03 {
    font-size: min( (36 / 750) * 100vw, 36px );
    margin: min( (40 / 750) * 100vw, 40px ) auto 0;
  }
  .sec_05 .sec_05_img.-img1 {
    width: min( (476 / 750) * 100vw, 476px );
  }
  .sec_05 .sec_05_img.-img2 {
    width: min( (460 / 750) * 100vw, 460px );
  }
  .sec_05 .sec_05_img.-img3 {
    width: min( (630 / 750) * 100vw, 630px );
    margin: min( (40 / 750) * 100vw, 40px ) auto 0;
  }
  .sec_05 .sec_05_note {
    font-size: min( (20 / 750) * 100vw, 20px );
    margin-top: min( (40 / 750) * 100vw, 40px );
  }
}

.sec_06 {
  padding: min( (120 / 1080) * 100vw , 120px ) 0 min( (40 / 1080) * 100vw , 40px );
}
.sec_06 .sec_06_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_06 .sec_06_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
@media screen and (max-width: 767px) {
  .sec_06 {
    padding: min( (120 / 750) * 100vw, 120px ) 0 max( (0 / 750) * 100vw, 0px );
  }
}

.sec_07 {
  background-image: url("../images/bg_sec07_01.png");
  background-size: min( (20 / 1080) * 100vw , 20px ) min( (20 / 1080) * 100vw , 20px );
  background-position: center;
  background-repeat: repeat;
  padding: 0 0 min( (120 / 1080) * 100vw , 120px );
}
.sec_07 .sec_07_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_07 .sec_07_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_07 .sec_07_01 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  color: #FF9129;
  text-align: center;
  width: min( (214 / 1080) * 100vw , 214px );
  height: min( (80 / 1080) * 100vw , 80px );
  background-image: url("../images/bg_sec07_02_pc.png");
  background-size: contain;
  background-position: center;
  background-repeat: repeat;
  margin: 0 auto min( (40 / 1080) * 100vw , 40px );
}
.sec_07 .sec_07_01 .inner {
  display: inline-block;
  padding-top: min( (10 / 1080) * 100vw , 10px );
}
.sec_07 .sec_07_note {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  text-align: right;
  margin: min( (8 / 1080) * 100vw , 8px ) 0 0;
}
@media screen and (max-width: 767px) {
  .sec_07 {
    background-size: min( (40 / 750) * 100vw, 40px ) min( (40 / 750) * 100vw, 40px );
    padding: 0 0 min( (120 / 750) * 100vw, 120px );
  }
  .sec_07 .sec_07_01 {
    font-size: min( (32 / 750) * 100vw, 32px );
    width: min( (320 / 750) * 100vw, 320px );
    height: min( (120 / 750) * 100vw, 120px );
    background-image: url("../images/bg_sec07_02_sp.png");
    margin: 0 auto min( (40 / 750) * 100vw, 40px );
  }
  .sec_07 .sec_07_01 .inner {
    padding-top: min( (12 / 750) * 100vw, 12px );
  }
  .sec_07 .sec_07_note {
    font-size: min( (20 / 750) * 100vw, 20px );
    margin: min( (10 / 750) * 100vw, 10px ) 0 0;
  }
}

.sec_08 {
  padding: min( (120 / 1080) * 100vw , 120px ) 0;
}
.sec_08 .sec_08_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_08 .sec_08_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_08 .sec_08_box {
  margin: min( (56 / 1080) * 100vw , 56px ) 0 0;
  position: relative;
}
.sec_08 .sec_08_box_txt {
  position: absolute;
  left: min( (191 / 1080) * 100vw , 191px );
  top: min( (40 / 1080) * 100vw , 40px );
}
.sec_08 .sec_08_txt_01 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  margin: 0 0 min( (8 / 1080) * 100vw , 8px );
  text-align: center;
}
.sec_08 .sec_08_txt_02 {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 180%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec_08 {
    padding: min( (120 / 750) * 100vw, 120px ) 0;
  }
  .sec_08 .sec_08_box {
    margin: min( (80 / 750) * 100vw, 80px ) 0 0;
  }
  .sec_08 .sec_08_box_txt {
    left: 50%;
    transform: translateX(-50%);
    top: min( (40 / 750) * 100vw, 40px );
    width: 100%;
  }
  .sec_08 .sec_08_txt_01 {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin: 0 0 min( (8 / 750) * 100vw, 8px );
  }
  .sec_08 .sec_08_txt_02 {
    font-size: min( (30 / 750) * 100vw, 30px );
  }
}

.sec_09 {
  padding: min( (120 / 1080) * 100vw , 120px ) 0 min( (80 / 1080) * 100vw , 80px );
}
.sec_09 .sec_09_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_09 .sec_09_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_09 .sec_09_txt_01 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
}
.sec_09 .sec_09_txt_02 {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  text-align: center;
  margin-bottom: min( (56 / 1080) * 100vw , 56px );
}
@media screen and (max-width: 767px) {
  .sec_09 {
    padding: min( (120 / 750) * 100vw, 120px ) 0 min( (80 / 750) * 100vw, 80px );
  }
  .sec_09 .sec_09_txt_01 {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .sec_09 .sec_09_txt_02 {
    font-size: min( (20 / 750) * 100vw, 20px );
    margin-bottom: min( (80 / 750) * 100vw, 80px );
  }
}

.ttl_01 {
  text-align: center;
  margin: 0 0 min( (56 / 1080) * 100vw , 56px );
}
.ttl_01.-mb {
  margin-bottom: min( (40 / 1080) * 100vw , 40px );
}
.ttl_01.-cv03 {
  margin: 0 0 min( (12 / 1080) * 100vw , 12px );
}
.ttl_01.-cv03 .ttl_01_main {
  font-size: min( (56 / 1080) * 100vw , 56px );
  line-height: 100%;
  margin: min( (5 / 1080) * 100vw , 5px ) 0 0;
}
.ttl_01.-cv03 .ttl_01_main .small {
  font-size: min( (32 / 1080) * 100vw , 32px );
}
.ttl_01.-sec09 {
  margin: 0 0 min( (16 / 1080) * 100vw , 16px );
}
.ttl_01 .ttl_01_sub {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  display: block;
}
.ttl_01 .ttl_01_main {
  font-size: min( (48 / 1080) * 100vw , 48px );
  font-weight: 700;
  line-height: 140%;
  color: #005EAE;
  display: block;
}
.ttl_01 .ttl_01_main .small {
  font-size: min( (32 / 1080) * 100vw , 32px );
  line-height: 100%;
}
.ttl_01 .ttl_01_main.s_yellow {
  color: #FCEE21;
}
@media screen and (max-width: 767px) {
  .ttl_01 {
    margin: 0 0 min( (80 / 750) * 100vw, 80px );
  }
  .ttl_01.-mb {
    margin-bottom: 0;
  }
  .ttl_01.-cv03 {
    margin: 0 0 min( (16 / 750) * 100vw, 16px );
  }
  .ttl_01.-cv03 .ttl_01_main {
    font-size: min( (80 / 750) * 100vw, 80px );
    line-height: 120%;
    margin: min( (5 / 750) * 100vw, 5px ) 0 0;
  }
  .ttl_01.-cv03 .ttl_01_main .small {
    font-size: min( (48 / 750) * 100vw, 48px );
  }
  .ttl_01.-sec09 {
    margin: 0 0 min( (16 / 750) * 100vw, 16px );
  }
  .ttl_01 .ttl_01_sub {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .ttl_01 .ttl_01_main {
    font-size: min( (64 / 750) * 100vw, 64px );
  }
  .ttl_01 .ttl_01_main .small {
    font-size: min( (48 / 750) * 100vw, 48px );
    line-height: 100%;
  }
}

.sec_cv01 {
  padding: min( (40 / 1080) * 100vw , 40px ) 0;
  background-color: #005EAE;
  margin: -1px auto 0;
}
@media screen and (max-width: 767px) {
  .sec_cv01 {
    padding: min( (40 / 750) * 100vw, 40px ) 0 min( (80 / 750) * 100vw, 80px );
  }
}

.sec_cv02 {
  background-image: url("../images/bg_cv02_01_pc.png"), url("../images/bg_cv02_02_pc.png");
  background-size: min( (1008 / 1080) * 100vw , 1008px ) min( (360 / 1080) * 100vw , 360px ), min( (1466 / 1080) * 100vw , 1466px ) min( (676 / 1080) * 100vw , 676px );
  background-position: top center, bottom min( (35 / 1080) * 100vw , 35px ) center;
  background-repeat: no-repeat;
  padding: min( (120 / 1080) * 100vw , 120px ) 0;
  background-color: #005EAE;
}
.sec_cv02 .sec_cv02_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_cv02 .sec_cv02_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_cv02 .sec_cv02_lead {
  color: #fff;
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  margin-bottom: min( (8 / 1080) * 100vw , 8px );
}
.sec_cv02 .sec_cv02_btn {
  margin-bottom: min( (80 / 1080) * 100vw , 80px );
}
@media screen and (max-width: 767px) {
  .sec_cv02 {
    background-image: url("../images/bg_cv02_01_sp.png"), url("../images/bg_cv02_02_sp.png");
    background-size: min( (724 / 750) * 100vw, 724px ) min( (537 / 750) * 100vw, 537px ), min( (750 / 750) * 100vw, 750px ) min( (917 / 750) * 100vw, 917px );
    background-position: top center, bottom min( (35 / 750) * 100vw, 35px ) center;
    padding: min( (120 / 750) * 100vw, 120px ) 0 min( (110 / 750) * 100vw, 110px );
  }
  .sec_cv02 .sec_cv02_lead {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin-bottom: min( (8 / 750) * 100vw, 8px );
  }
  .sec_cv02 .sec_cv02_btn {
    margin-bottom: min( (120 / 750) * 100vw, 120px );
  }
}

.sec_cv03 {
  background-image: url("../images/bg_cv03_01_pc.png");
  background-size: min( (1113 / 1080) * 100vw , 1113px ) min( (741 / 1080) * 100vw , 741px );
  background-position: top min( (40 / 1080) * 100vw , 40px ) center;
  background-repeat: no-repeat;
  padding: min( (120 / 1080) * 100vw , 120px ) 0;
  background-color: #005EAE;
}
.sec_cv03 .sec_cv03_outer {
  max-width: min( (1000 / 1080) * 100vw , 1000px );
  margin: auto;
}
@media screen and (max-width: 767px) {
  .sec_cv03 .sec_cv03_outer {
    max-width: min( (630 / 750) * 100vw, 630px );
  }
}
.sec_cv03 .sec_cv03_lead {
  color: #fff;
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  margin-bottom: min( (383 / 1080) * 100vw , 383px );
}
.sec_cv03 .sec_cv02_btn {
  margin-bottom: min( (80 / 1080) * 100vw , 80px );
}
@media screen and (max-width: 767px) {
  .sec_cv03 {
    background-image: url("../images/bg_cv03_01_sp.png");
    background-size: min( (724 / 750) * 100vw, 724px ) min( (1031 / 750) * 100vw, 1031px );
    background-position: top min( (40 / 750) * 100vw, 40px ) center;
    padding: min( (120 / 750) * 100vw, 120px ) 0;
  }
  .sec_cv03 .sec_cv03_lead {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin-bottom: min( (398 / 750) * 100vw, 398px );
  }
  .sec_cv03 .sec_cv02_btn {
    margin-bottom: min( (80 / 1080) * 100vw , 80px );
  }
}

.list_check .list_check_item {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 140%;
  margin-top: min( (8 / 1080) * 100vw , 8px );
  padding-left: min( (24 / 1080) * 100vw , 24px );
  position: relative;
  letter-spacing: 0.07em;
}
.list_check .list_check_item::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_check_01.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (16 / 1080) * 100vw , 16px );
  height: min( (15 / 1080) * 100vw , 15px );
  top: min( (5 / 1080) * 100vw , 5px );
  left: 0;
}
@media screen and (max-width: 767px) {
  .list_check .list_check_item {
    font-size: min( (30 / 750) * 100vw, 30px );
    margin-top: min( (15 / 750) * 100vw, 15px );
    padding-left: min( (40 / 750) * 100vw, 40px );
    position: relative;
  }
  .list_check .list_check_item::after {
    width: min( (24 / 750) * 100vw, 24px );
    height: min( (23 / 750) * 100vw, 23px );
    top: min( (12 / 750) * 100vw, 12px );
    left: 0;
  }
}

.list_01 {
  display: flex;
  justify-content: space-between;
}
.list_01 .list_01_item {
  flex: 0 0 min( (220 / 1080) * 100vw , 220px );
}
.list_01 .list_01_img {
  margin-bottom: min( (8 / 1080) * 100vw , 8px );
}
.list_01 .list_01_txt_01 {
  font-size: min( (14 / 1080) * 100vw , 14px );
  font-weight: 700;
  line-height: 140%;
  letter-spacing: 0.07em;
}
.list_01 .list_01_txt_02 {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 140%;
  color: #005EAE;
}
@media screen and (max-width: 767px) {
  .list_01 {
    flex-wrap: wrap;
  }
  .list_01 .list_01_item {
    flex: 0 0 min( (296 / 750) * 100vw, 296px );
    margin-bottom: min( (56 / 750) * 100vw, 56px );
  }
  .list_01 .list_01_img {
    margin-bottom: min( (24 / 750) * 100vw, 24px );
  }
  .list_01 .list_01_txt_01 {
    font-size: min( (26 / 750) * 100vw, 26px );
  }
  .list_01 .list_01_txt_02 {
    font-size: min( (36 / 750) * 100vw, 36px );
  }
}

.list_02 {
  display: flex;
  justify-content: space-between;
  margin-bottom: min( (40 / 1080) * 100vw , 40px );
}
.list_02 .list_02_item {
  flex: 0 0 min( (312 / 1080) * 100vw , 312px );
  position: relative;
}
.list_02 .list_02_img {
  margin-bottom: min( (20 / 1080) * 100vw , 20px );
}
.list_02 .list_02_label {
  font-size: min( (14 / 1080) * 100vw , 14px );
  font-weight: 700;
  line-height: 180%;
  letter-spacing: 0.07em;
  color: #005EAE;
  background-color: #FCEE21;
  border-radius: min( (8 / 1080) * 100vw , 8px );
  display: inline-block;
  padding: 0 min( (16 / 1080) * 100vw , 16px );
  position: absolute;
  top: min( (184 / 1080) * 100vw , 184px );
  left: 50%;
  transform: translateX(-50%);
}
.list_02 .list_02_txt {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  color: #FCEE21;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .list_02 {
    justify-content: center;
    flex-wrap: wrap;
    gap: min( (38 / 750) * 100vw, 38px );
    margin-bottom: min( (35 / 750) * 100vw, 35px );
  }
  .list_02 .list_02_item {
    flex: 0 0 min( (296 / 750) * 100vw, 296px );
    position: relative;
    margin-bottom: min( (5 / 1080) * 100vw , 5px );
  }
  .list_02 .list_02_item:nth-child(1) {
    flex: 0 0 100%;
  }
  .list_02 .list_02_item:nth-child(1) .list_02_img {
    width: min( (296 / 750) * 100vw, 296px );
    margin: 0 auto min( (40 / 750) * 100vw, 40px );
  }
  .list_02 .list_02_img {
    margin-bottom: min( (40 / 750) * 100vw, 40px );
  }
  .list_02 .list_02_label {
    font-size: min( (26 / 750) * 100vw, 26px );
    border-radius: min( (8 / 750) * 100vw, 8px );
    padding: 0 min( (16 / 750) * 100vw, 16px );
    top: min( (172 / 750) * 100vw, 172px );
  }
  .list_02 .list_02_txt {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
}

.list_voice {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: min( (40 / 1080) * 100vw , 40px );
}
.list_voice .list_voice_item {
  flex: 0 0 min( (480 / 1080) * 100vw , 480px );
  border-radius: min( (16 / 1080) * 100vw , 16px );
  border: min( (1 / 1080) * 100vw , 1px ) solid var(--accent-blue-primary, #005EAE);
  background: var(--base-fff, #FFF);
  margin-top: min( (40 / 1080) * 100vw , 40px );
  position: relative;
}
.list_voice .list_voice_item:before {
  content: "";
  display: block;
  position: absolute;
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (80 / 1080) * 100vw , 80px );
  height: min( (80 / 1080) * 100vw , 80px );
  top: max( (-40 / 1080) * 100vw , -40px );
  left: 50%;
  transform: translateX(-50%);
}
.list_voice .list_voice_item:nth-child(1):before {
  background-image: url("../images/icon_sec07_01.png");
}
.list_voice .list_voice_item:nth-child(2):before {
  background-image: url("../images/icon_sec07_02.png");
}
.list_voice .list_voice_item:nth-child(3):before {
  background-image: url("../images/icon_sec07_03.png");
}
.list_voice .list_voice_inner {
  padding: min( (56 / 1080) * 100vw , 56px ) min( (40 / 1080) * 100vw , 40px ) min( (24 / 1080) * 100vw , 24px );
  position: relative;
}
.list_voice .list_voice_inner:before {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_quotation_01.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (24 / 1080) * 100vw , 24px );
  height: min( (22 / 1080) * 100vw , 22px );
  top: min( (24 / 1080) * 100vw , 24px );
  left: min( (24 / 1080) * 100vw , 24px );
}
.list_voice .list_voice_inner:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_quotation_02.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (24 / 1080) * 100vw , 24px );
  height: min( (22 / 1080) * 100vw , 22px );
  bottom: min( (24 / 1080) * 100vw , 24px );
  right: min( (24 / 1080) * 100vw , 24px );
}
.list_voice .list_voice_txt_01 {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 180%;
}
.list_voice .list_voice_txt_02 {
  font-size: min( (14 / 1080) * 100vw , 14px );
  font-weight: 700;
  line-height: 180%;
  color: #005EAE;
  margin-top: min( (8 / 1080) * 100vw , 8px );
}
@media screen and (max-width: 767px) {
  .list_voice {
    display: block;
  }
  .list_voice .list_voice_item {
    border-radius: min( (16 / 750) * 100vw, 16px );
    border: min( (2 / 750) * 100vw, 2px ) solid var(--accent-blue-primary, #005EAE);
    margin-top: min( (120 / 750) * 100vw, 120px );
  }
  .list_voice .list_voice_item:before {
    width: min( (120 / 750) * 100vw, 120px );
    height: min( (120 / 750) * 100vw, 120px );
    top: max( (-60 / 750) * 100vw, -60px );
  }
  .list_voice .list_voice_inner {
    padding: min( (80 / 750) * 100vw, 80px ) min( (40 / 750) * 100vw, 40px ) min( (24 / 750) * 100vw, 24px );
  }
  .list_voice .list_voice_inner:before {
    width: min( (40 / 750) * 100vw, 40px );
    height: min( (36 / 750) * 100vw, 36px );
    top: min( (24 / 750) * 100vw, 24px );
    left: min( (24 / 750) * 100vw, 24px );
  }
  .list_voice .list_voice_inner:after {
    width: min( (40 / 750) * 100vw, 40px );
    height: min( (36 / 750) * 100vw, 36px );
    bottom: min( (24 / 750) * 100vw, 24px );
    right: min( (24 / 750) * 100vw, 24px );
  }
  .list_voice .list_voice_txt_01 {
    font-size: min( (30 / 750) * 100vw, 30px );
  }
  .list_voice .list_voice_txt_02 {
    font-size: min( (26 / 750) * 100vw, 26px );
    margin-top: min( (16 / 750) * 100vw, 16px );
  }
}

.list_step {
  display: flex;
  justify-content: space-between;
  position: relative;
}
.list_step:before {
  content: "";
  display: block;
  position: absolute;
  background-color: #005EAE;
  width: min( (874 / 1080) * 100vw , 874px );
  height: min( (3 / 1080) * 100vw , 3px );
  top: min( (89 / 1080) * 100vw , 89px );
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.list_step .list_step_item {
  flex: 0 0 min( (306 / 1080) * 100vw , 306px );
}
.list_step .list_step_img {
  width: min( (180 / 1080) * 100vw , 180px );
  z-index: 2;
  position: relative;
  margin: 0 auto min( (16 / 1080) * 100vw , 16px );
}
.list_step .list_step_txt_01 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  margin: 0 0 min( (8 / 1080) * 100vw , 8px );
  height: min( (64 / 1080) * 100vw , 64px );
  display: flex;
  justify-content: center;
  align-items: center;
}
.list_step .list_step_txt_02 {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 180%;
}
@media screen and (max-width: 767px) {
  .list_step {
    display: block;
  }
  .list_step:before {
    content: "";
    display: block;
    position: absolute;
    background-color: #005EAE;
    width: min( (6 / 750) * 100vw, 6px );
    height: min( (700 / 750) * 100vw, 700px );
    top: max( (0 / 750) * 100vw, 0px );
    left: min( (87 / 750) * 100vw, 87px );
    transform: translateX(0);
  }
  .list_step .list_step_item {
    display: flex;
    justify-content: space-between;
    margin: 0 0 min( (56 / 750) * 100vw, 56px );
  }
  .list_step .list_step_img {
    flex: 0 0 min( (180 / 750) * 100vw, 180px );
    width: min( (180 / 750) * 100vw, 180px );
    margin: 0;
  }
  .list_step .list_step_txt {
    flex: 0 0 min( (410 / 750) * 100vw, 410px );
  }
  .list_step .list_step_txt_01 {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin: 0 0 min( (8 / 750) * 100vw, 8px );
    height: auto;
    display: block;
    text-align: left;
  }
  .list_step .list_step_txt_02 {
    font-size: min( (30 / 750) * 100vw, 30px );
    text-align: left;
  }
}

.box_01 {
  border-radius: min( (24 / 1080) * 100vw , 24px );
  border: min( (1 / 1080) * 100vw , 1px ) solid var(--accent-blue-primary, #005EAE);
  background: var(--base-fff, #FFF);
  padding: min( (39 / 1080) * 100vw , 39px ) min( (24 / 1080) * 100vw , 24px ) min( (24 / 1080) * 100vw , 24px );
  position: relative;
}
.box_01:before {
  display: block;
  background-color: #005EAE;
  width: min( (64 / 1080) * 100vw , 64px );
  height: min( (64 / 1080) * 100vw , 64px );
  border-radius: 50%;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-size: min( (40 / 1080) * 100vw , 40px );
  line-height: 100%;
  position: absolute;
  top: max( (-32 / 1080) * 100vw , -32px );
  left: 50%;
  transform: translateX(-50%);
}
.box_01.-n1 {
  flex: 0 0 min( (370 / 1080) * 100vw , 370px );
}
.box_01.-n1:before {
  content: "1";
}
.box_01.-n1 .box_01_txt_01 {
  letter-spacing: 0.02em;
}
.box_01.-n2 {
  flex: 0 0 min( (590 / 1080) * 100vw , 590px );
}
.box_01.-n2:before {
  content: "2";
}
.box_01 .box_01_txt_01 {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 160%;
  color: #005EAE;
  text-align: center;
  margin: 0 0 min( (15 / 1080) * 100vw , 15px );
}
.box_01 .box_01_flex {
  display: flex;
  justify-content: space-between;
}
.box_01 .box_01_inner {
  flex: 0 0 min( (251 / 1080) * 100vw , 251px );
}
.box_01 .box_01_txt_02 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  color: #005EAE;
  text-align: center;
  margin: min( (15 / 1080) * 100vw , 15px ) 0 0;
}
@media screen and (max-width: 767px) {
  .box_01 {
    border-radius: min( (24 / 750) * 100vw, 24px );
    border: min( (2 / 750) * 100vw, 2px ) solid var(--accent-blue-primary, #005EAE);
    padding: min( (64 / 750) * 100vw, 64px ) min( (40 / 750) * 100vw, 40px ) min( (40 / 750) * 100vw, 40px );
  }
  .box_01:before {
    width: min( (112 / 750) * 100vw, 112px );
    height: min( (112 / 750) * 100vw, 112px );
    font-size: min( (64 / 750) * 100vw, 64px );
    top: max( (-56 / 750) * 100vw, -56px );
  }
  .box_01.-n1 {
    margin-bottom: min( (112 / 750) * 100vw, 112px );
  }
  .box_01 .box_01_txt_01 {
    font-size: min( (36 / 750) * 100vw, 36px );
    margin: 0 0 min( (24 / 750) * 100vw, 24px );
  }
  .box_01 .box_01_flex {
    display: block;
  }
  .box_01 .box_01_inner.-mb {
    margin: 0 0 min( (56 / 750) * 100vw, 56px );
  }
  .box_01 .box_01_txt_02 {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin: min( (22 / 750) * 100vw, 22px ) 0 0;
  }
}

.box_02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: min( (40 / 1080) * 100vw , 40px );
  margin: 0 0 min( (24 / 1080) * 100vw , 24px );
}
.box_02 .box_02_img {
  flex: 0 0 min( (480 / 1080) * 100vw , 480px );
}
.box_02 .box_02_txt_01 {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 140%;
  color: #005EAE;
  margin: 0 0 min( (8 / 1080) * 100vw , 8px );
}
.box_02 .box_02_txt_02 {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 180%;
}
@media screen and (max-width: 767px) {
  .box_02 {
    display: block;
    margin: 0 0 min( (40 / 750) * 100vw, 40px );
  }
  .box_02 .box_02_txt_01 {
    font-size: min( (48 / 750) * 100vw, 48px );
    margin: min( (24 / 1080) * 100vw , 24px ) 0 min( (16 / 750) * 100vw, 16px );
  }
  .box_02 .box_02_txt_02 {
    font-size: min( (30 / 750) * 100vw, 30px );
  }
}

.box_03 {
  border-radius: min( (16 / 1080) * 100vw , 16px );
  border: min( (1 / 1080) * 100vw , 1px ) solid var(--accent-blue-primary, #005EAE);
  margin: 0 0 min( (56 / 1080) * 100vw , 56px );
}
.box_03.-n1 {
  padding: min( (24 / 1080) * 100vw , 24px ) min( (40 / 1080) * 100vw , 40px );
}
.box_03.-n2 {
  padding: min( (40 / 1080) * 100vw , 40px ) min( (40 / 1080) * 100vw , 40px );
}
.box_03 .box_03_inner {
  display: flex;
  justify-content: space-between;
}
.box_03 .box_03_img_01 {
  flex: 0 0 min( (280 / 1080) * 100vw , 280px );
}
.box_03 .box_03_area_01 {
  flex: 0 0 min( (280 / 1080) * 100vw , 280px );
}
.box_03 .box_03_txt_01 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  color: #005EAE;
  margin: min( (10 / 1080) * 100vw , 10px ) 0 0;
}
.box_03 .box_03_txt_02 {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 180%;
}
.box_03 .box_03_img_03 {
  flex: 0 0 min( (280 / 1080) * 100vw , 280px );
}
.box_03 .box_03_area_02 {
  flex: 0 0 min( (440 / 1080) * 100vw , 440px );
}
.box_03 .box_03_area_03 {
  flex: 0 0 min( (440 / 1080) * 100vw , 440px );
}
.box_03 .box_03_txt_03 {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
}
.box_03 .box_03_txt_04 {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 140%;
  color: #005EAE;
  text-align: center;
}
.box_03 .box_03_img_04 {
  width: min( (148 / 1080) * 100vw , 148px );
  margin: min( (15 / 1080) * 100vw , 15px ) auto 0;
}
.box_03 .box_03_iconbox {
  border-radius: min( (16 / 1080) * 100vw , 16px );
  background: var(--base-fff, #FFF);
  position: relative;
}
.box_03 .box_03_iconbox:before {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/icon_sec04_01.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (80 / 1080) * 100vw , 80px );
  height: min( (80 / 1080) * 100vw , 80px );
  top: max( (-14 / 1080) * 100vw , -14px );
  left: 50%;
  transform: translateX(-50%);
}
.box_03 .box_03_iconbox_inner {
  padding: min( (66 / 1080) * 100vw , 66px ) min( (40 / 1080) * 100vw , 40px ) min( (24 / 1080) * 100vw , 24px );
  position: relative;
}
.box_03 .box_03_iconbox_inner:before {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_quotation_01.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (24 / 1080) * 100vw , 24px );
  height: min( (22 / 1080) * 100vw , 22px );
  top: min( (24 / 1080) * 100vw , 24px );
  left: min( (24 / 1080) * 100vw , 24px );
}
.box_03 .box_03_iconbox_inner:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_quotation_02.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (24 / 1080) * 100vw , 24px );
  height: min( (22 / 1080) * 100vw , 22px );
  bottom: min( (24 / 1080) * 100vw , 24px );
  right: min( (24 / 1080) * 100vw , 24px );
}
.box_03 .box_03_iconbox_text_01 {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 180%;
}
.box_03 .box_03_iconbox_text_02 {
  font-size: min( (14 / 1080) * 100vw , 14px );
  font-weight: 700;
  line-height: 180%;
  color: #005EAE;
  margin-top: min( (8 / 1080) * 100vw , 8px );
}
.box_03 .box_03_note {
  margin: min( (20 / 1080) * 100vw , 20px ) 0;
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  text-align: center;
}
.box_03 .box_03_txt_reason {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  padding: 0 0 min( (74 / 1080) * 100vw , 74px );
  position: relative;
}
.box_03 .box_03_txt_reason:after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_arrow_03.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (56 / 1080) * 100vw , 56px );
  height: min( (40 / 1080) * 100vw , 40px );
  bottom: min( (20 / 1080) * 100vw , 20px );
  left: 50%;
  transform: translateX(-50%);
}
.box_03 .box_03_txt_05 {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 180%;
  margin-top: min( (8 / 1080) * 100vw , 8px );
}
.box_03 .box_03_txt_06 {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  margin-top: min( (8 / 1080) * 100vw , 8px );
}
@media screen and (max-width: 767px) {
  .box_03 {
    border-radius: min( (16 / 750) * 100vw, 16px );
    border: min( (2 / 750) * 100vw, 2px ) solid var(--accent-blue-primary, #005EAE);
    margin: 0 0 min( (80 / 750) * 100vw, 80px );
  }
  .box_03.-n1 {
    padding: min( (56 / 750) * 100vw, 56px ) min( (40 / 750) * 100vw, 40px );
  }
  .box_03.-n2 {
    padding: min( (56 / 750) * 100vw, 56px ) min( (40 / 750) * 100vw, 40px );
  }
  .box_03 .box_03_inner {
    display: block;
  }
  .box_03 .box_03_img_01 {
    margin-bottom: min( (40 / 750) * 100vw, 40px );
  }
  .box_03 .box_03_area_01 {
    margin-bottom: min( (40 / 750) * 100vw, 40px );
  }
  .box_03 .box_03_txt_01 {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin: min( (16 / 750) * 100vw, 16px ) 0 min( (8 / 750) * 100vw, 8px );
  }
  .box_03 .box_03_txt_02 {
    font-size: min( (30 / 750) * 100vw, 30px );
  }
  .box_03 .box_03_txt_03 {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .box_03 .box_03_txt_04 {
    font-size: min( (48 / 750) * 100vw, 48px );
  }
  .box_03 .box_03_img_04 {
    width: min( (250 / 750) * 100vw, 250px );
    margin: min( (16 / 750) * 100vw, 16px ) auto min( (100 / 750) * 100vw, 100px );
  }
  .box_03 .box_03_iconbox {
    border-radius: min( (16 / 750) * 100vw, 16px );
  }
  .box_03 .box_03_iconbox:before {
    width: min( (120 / 750) * 100vw, 120px );
    height: min( (120 / 750) * 100vw, 120px );
    top: max( (-60 / 750) * 100vw, -60px );
  }
  .box_03 .box_03_iconbox_inner {
    padding: min( (80 / 750) * 100vw, 80px ) min( (40 / 750) * 100vw, 40px ) min( (24 / 750) * 100vw, 24px );
  }
  .box_03 .box_03_iconbox_inner:before {
    width: min( (40 / 750) * 100vw, 40px );
    height: min( (36 / 750) * 100vw, 36px );
    top: min( (24 / 750) * 100vw, 24px );
    left: min( (24 / 750) * 100vw, 24px );
  }
  .box_03 .box_03_iconbox_inner:after {
    width: min( (40 / 750) * 100vw, 40px );
    height: min( (36 / 750) * 100vw, 36px );
    bottom: min( (24 / 750) * 100vw, 24px );
    right: min( (24 / 750) * 100vw, 24px );
  }
  .box_03 .box_03_iconbox_text_01 {
    font-size: min( (30 / 750) * 100vw, 30px );
  }
  .box_03 .box_03_iconbox_text_02 {
    font-size: min( (26 / 750) * 100vw, 26px );
    margin-top: min( (8 / 750) * 100vw, 8px );
  }
  .box_03 .box_03_note {
    margin: min( (40 / 750) * 100vw, 40px ) 0;
    font-size: min( (20 / 750) * 100vw, 20px );
  }
  .box_03 .box_03_txt_reason {
    font-size: min( (32 / 750) * 100vw, 32px );
    padding: 0 0 min( (116 / 750) * 100vw, 116px );
  }
  .box_03 .box_03_txt_reason:after {
    width: min( (80 / 750) * 100vw, 80px );
    height: min( (56 / 750) * 100vw, 56px );
    bottom: min( (40 / 750) * 100vw, 40px );
  }
  .box_03 .box_03_txt_05 {
    font-size: min( (30 / 750) * 100vw, 30px );
    margin-top: min( (16 / 750) * 100vw, 16px );
  }
  .box_03 .box_03_txt_06 {
    font-size: min( (20 / 750) * 100vw, 20px );
    margin: min( (16 / 750) * 100vw, 16px ) 0 min( (40 / 750) * 100vw, 40px );
  }
}

.box_04 {
  display: flex;
  justify-content: space-between;
  margin: 0 0 min( (80 / 1080) * 100vw , 80px );
}
.box_04.-reverse {
  flex-direction: row-reverse;
}
.box_04 .box_04_img {
  flex: 0 0 min( (480 / 1080) * 100vw , 480px );
}
.box_04 .box_04_area {
  flex: 0 0 min( (480 / 1080) * 100vw , 480px );
}
.box_04 .box_04_label {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  color: #fff;
  margin: 0 0 min( (16 / 1080) * 100vw , 16px );
  border-radius: min( (8 / 1080) * 100vw , 8px );
  background: var(--accent-orange, #FF9129);
  display: inline-block;
  padding: 0 min( (16 / 1080) * 100vw , 16px );
}
.box_04 .box_04_txt_01 {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 140%;
  color: #005EAE;
  margin: 0 0 min( (16 / 1080) * 100vw , 16px );
}
.box_04 .box_04_txt_02 {
  font-size: min( (16 / 1080) * 100vw , 16px );
  line-height: 180%;
  margin: 0 0 min( (40 / 1080) * 100vw , 40px );
}
.box_04 .box_04_box {
  border-radius: min( (8 / 1080) * 100vw , 8px );
  background: var(--base-blue-light, #E8F5FF);
  padding: min( (8 / 1080) * 100vw , 8px ) min( (24 / 1080) * 100vw , 24px );
  display: flex;
  align-items: center;
  gap: min( (24 / 1080) * 100vw , 24px );
}
.box_04 .box_04_box.-reverse {
  flex-direction: row-reverse;
  justify-content: flex-end;
}
.box_04 .box_04_box_txt {
  font-size: min( (14 / 1080) * 100vw , 14px );
  line-height: 180%;
}
.box_04 .box_04_box_img {
  flex: 0 0 min( (80 / 1080) * 100vw , 80px );
}
@media screen and (max-width: 767px) {
  .box_04 {
    display: block;
    margin: 0 0 min( (120 / 750) * 100vw, 120px );
  }
  .box_04 .box_04_img {
    margin-bottom: min( (40 / 750) * 100vw, 40px );
  }
  .box_04 .box_04_label {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin: 0 0 min( (16 / 750) * 100vw, 16px );
    border-radius: min( (8 / 750) * 100vw, 8px );
    padding: 0 min( (16 / 750) * 100vw, 16px );
  }
  .box_04 .box_04_txt_01 {
    font-size: min( (48 / 750) * 100vw, 48px );
    margin: 0 0 min( (16 / 750) * 100vw, 16px );
  }
  .box_04 .box_04_txt_02 {
    font-size: min( (30 / 750) * 100vw, 30px );
    margin: 0 0 min( (40 / 750) * 100vw, 40px );
  }
  .box_04 .box_04_box {
    border-radius: min( (8 / 750) * 100vw, 8px );
    padding: min( (8 / 750) * 100vw, 8px ) min( (24 / 750) * 100vw, 24px );
    gap: min( (24 / 750) * 100vw, 24px );
  }
  .box_04 .box_04_box_txt {
    font-size: min( (26 / 750) * 100vw, 26px );
  }
  .box_04 .box_04_box_img {
    flex: 0 0 min( (136 / 750) * 100vw, 136px );
  }
}

.btn_01 {
  width: min( (460 / 1080) * 100vw , 460px );
  margin: 0 auto;
}
.btn_01 .btn_01_link {
  display: flex;
  justify-content: center;
  align-items: center;
  height: min( (88 / 1080) * 100vw , 88px );
  border-radius: min( (96 / 1080) * 100vw , 96px );
  background: var(--accent-green, #2DC3C3);
  box-shadow: 0px min( (8 / 1080) * 100vw , 8px ) min( (16 / 1080) * 100vw , 16px ) 0px rgba(0, 0, 0, 0.24);
  position: relative;
  letter-spacing: 0.16em;
}
.btn_01 .btn_01_link::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_arrow_01_pc.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (9 / 1080) * 100vw , 9px );
  height: min( (14 / 1080) * 100vw , 14px );
  top: 50%;
  transform: translateY(-50%);
  right: min( (35 / 1080) * 100vw , 35px );
}
.btn_01 .btn_01_circle {
  background-color: #FFF;
  width: min( (84 / 1080) * 100vw , 84px );
  height: min( (84 / 1080) * 100vw , 84px );
  border-radius: 50%;
  color: #2DC3C3;
  font-weight: 700;
  line-height: 100%;
  text-align: center;
  letter-spacing: 0.01em;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: min( (2 / 1080) * 100vw , 2px );
  top: 50%;
  transform: translateY(-50%);
}
.btn_01 .btn_01_small {
  font-size: min( (14 / 1080) * 100vw , 14px );
  display: block;
  margin-bottom: min( (4 / 1080) * 100vw , 4px );
}
.btn_01 .btn_01_main {
  font-size: min( (24 / 1080) * 100vw , 24px );
  display: block;
}
.btn_01 .btn_01_main span {
  font-size: min( (40 / 1080) * 100vw , 40px );
}
.btn_01 .btn_01_txt {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.03em;
  color: #fff;
  padding-left: min( (44 / 1080) * 100vw , 44px );
}
@media screen and (max-width: 767px) {
  .btn_01 {
    width: min( (630 / 750) * 100vw, 630px );
  }
  .btn_01 .btn_01_link {
    height: min( (120 / 750) * 100vw, 120px );
    border-radius: min( (96 / 750) * 100vw, 96px );
    box-shadow: 0px min( (16 / 750) * 100vw, 16px ) min( (32 / 750) * 100vw, 32px ) 0px rgba(0, 0, 0, 0.24);
  }
  .btn_01 .btn_01_link::after {
    background-image: url("../images/ico_arrow_01_sp.png");
    width: min( (14 / 750) * 100vw, 14px );
    height: min( (20 / 750) * 100vw, 20px );
    right: min( (40 / 750) * 100vw, 40px );
  }
  .btn_01 .btn_01_circle {
    background-color: #FFF;
    width: min( (112 / 750) * 100vw, 112px );
    height: min( (112 / 750) * 100vw, 112px );
    left: min( (4 / 750) * 100vw, 4px );
  }
  .btn_01 .btn_01_small {
    font-size: min( (20 / 750) * 100vw, 20px );
    display: block;
    margin-bottom: 0;
    line-height: 100%;
    padding-bottom: min( (14 / 750) * 100vw, 14px );
  }
  .btn_01 .btn_01_main {
    font-size: min( (34 / 750) * 100vw, 34px );
    display: block;
  }
  .btn_01 .btn_01_main span {
    font-size: min( (48 / 750) * 100vw, 48px );
  }
  .btn_01 .btn_01_txt {
    font-size: min( (40 / 750) * 100vw, 40px );
    line-height: 120%;
    padding-left: min( (44 / 750) * 100vw, 44px );
  }
}

.btn_02 {
  width: min( (460 / 1080) * 100vw , 460px );
  margin: 0 auto;
}
.btn_02 .btn_02_link {
  display: flex;
  justify-content: center;
  align-items: center;
  height: min( (88 / 1080) * 100vw , 88px );
  border-radius: min( (96 / 1080) * 100vw , 96px );
  background: #fff;
  box-shadow: 0px min( (8 / 1080) * 100vw , 8px ) min( (16 / 1080) * 100vw , 16px ) 0px rgba(0, 0, 0, 0.24);
  position: relative;
  letter-spacing: 0.16em;
  border: min( (2 / 1080) * 100vw , 2px ) solid #2DC3C3;
}
.btn_02 .btn_02_link::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_arrow_02_pc.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (9 / 1080) * 100vw , 9px );
  height: min( (14 / 1080) * 100vw , 14px );
  top: 50%;
  transform: translateY(-50%);
  right: min( (35 / 1080) * 100vw , 35px );
}
.btn_02 .btn_02_txt {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.03em;
  color: #2DC3C3;
}
@media screen and (max-width: 767px) {
  .btn_02 {
    width: min( (630 / 750) * 100vw, 630px );
  }
  .btn_02 .btn_02_link {
    height: min( (120 / 750) * 100vw, 120px );
    border-radius: min( (96 / 750) * 100vw, 96px );
    box-shadow: 0px min( (16 / 750) * 100vw, 16px ) min( (32 / 750) * 100vw, 32px ) 0px rgba(0, 0, 0, 0.24);
    border: min( (4 / 750) * 100vw, 4px ) solid #2DC3C3;
  }
  .btn_02 .btn_02_link::after {
    width: min( (14 / 750) * 100vw, 14px );
    height: min( (20 / 750) * 100vw, 20px );
    right: min( (40 / 750) * 100vw, 40px );
  }
  .btn_02 .btn_02_txt {
    font-size: min( (40 / 750) * 100vw, 40px );
    line-height: 140%;
  }
}

.mod_s4_mv {
  position: relative;
}
.mod_s4_mv .mod_s4_mv_txt {
  font-size: min( (32 / 1080) * 100vw , 32px );
  font-weight: 700;
  line-height: 140%;
  position: absolute;
  top: min( (195 / 1080) * 100vw , 195px );
  left: min( (811 / 1080) * 100vw , 811px );
}
.mod_s4_mv .mod_s4_mv_txt .inner {
  display: inline-block;
  background-color: #fff;
  color: #005EAE;
  padding: min( (1 / 1080) * 100vw , 1px ) min( (8 / 1080) * 100vw , 8px );
  margin: 0 auto min( (8 / 1080) * 100vw , 8px );
}
.mod_s4_mv .mod_s4_mv_txt .inner.-small {
  font-size: min( (20 / 1080) * 100vw , 20px );
  line-height: 160%;
}
@media screen and (max-width: 767px) {
  .mod_s4_mv {
    position: relative;
  }
  .mod_s4_mv .mod_s4_mv_txt {
    font-size: min( (48 / 750) * 100vw, 48px );
    top: min( (145 / 750) * 100vw, 145px );
    left: min( (160 / 750) * 100vw, 160px );
  }
  .mod_s4_mv .mod_s4_mv_txt .inner {
    padding: min( (1 / 750) * 100vw, 1px ) min( (8 / 750) * 100vw, 8px );
    margin: 0 auto min( (8 / 750) * 100vw, 8px );
  }
  .mod_s4_mv .mod_s4_mv_txt .inner.-small {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
}

.mod_cv {
  border-radius: min( (24 / 1080) * 100vw , 24px );
  background: var(--base-yellow-light, #FEFFDF);
  padding: min( (40 / 1080) * 100vw , 40px ) 0;
  position: relative;
}
.mod_cv::after {
  content: "";
  display: block;
  position: absolute;
  background-image: url("../images/ico_cv_01.png");
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (95 / 1080) * 100vw , 95px );
  height: min( (111 / 1080) * 100vw , 111px );
  top: min( (54 / 1080) * 100vw , 54px );
  right: min( (235 / 1080) * 100vw , 235px );
}
.mod_cv .mod_cv_txt_01 {
  font-size: min( (24 / 1080) * 100vw , 24px );
  font-weight: 700;
  line-height: 160%;
  color: #005EAE;
  text-align: center;
}
.mod_cv .mod_cv_txt_02 {
  font-size: min( (48 / 1080) * 100vw , 48px );
  font-weight: 700;
  line-height: 140%;
  color: #F03A3A;
  text-align: center;
  margin-bottom: min( (24 / 1080) * 100vw , 24px );
}
.mod_cv .mod_cv_txt_02 .large {
  font-size: min( (80 / 1080) * 100vw , 80px );
  line-height: 100%;
}
.mod_cv .mod_cv_txt_02 .small {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
}
.mod_cv .mod_cv_wrapper {
  display: flex;
  justify-content: space-between;
  width: min( (920 / 1080) * 100vw , 920px );
  margin: 0 auto;
}
.mod_cv .mod_cv_wrapper .mod_cv_btn {
  width: min( (440 / 1080) * 100vw , 440px );
}
.mod_cv .mod_cv_lead {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 160%;
  text-align: center;
  margin-bottom: min( (8 / 1080) * 100vw , 8px );
}
.mod_cv .mod_cv_lead.-blue {
  color: #005EAE;
}
.mod_cv .mod_cv_note {
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  text-align: center;
  margin-top: min( (24 / 1080) * 100vw , 24px );
}
@media screen and (max-width: 767px) {
  .mod_cv {
    border-radius: min( (24 / 750) * 100vw, 24px );
    padding: min( (40 / 750) * 100vw, 40px ) 0;
    position: relative;
  }
  .mod_cv::after {
    width: min( (118 / 750) * 100vw, 118px );
    height: min( (138 / 750) * 100vw, 138px );
    top: min( (277 / 750) * 100vw, 277px );
    right: min( (67 / 750) * 100vw, 67px );
  }
  .mod_cv .mod_cv_txt_01 {
    font-size: min( (36 / 750) * 100vw, 36px );
  }
  .mod_cv .mod_cv_txt_02 {
    font-size: min( (64 / 750) * 100vw, 64px );
    margin-bottom: min( (40 / 750) * 100vw, 40px );
  }
  .mod_cv .mod_cv_txt_02 .large {
    font-size: min( (108 / 750) * 100vw, 108px );
  }
  .mod_cv .mod_cv_txt_02 .small {
    font-size: min( (20 / 750) * 100vw, 20px );
  }
  .mod_cv .mod_cv_btn {
    width: min( (590 / 750) * 100vw, 590px );
  }
  .mod_cv .mod_cv_wrapper {
    display: block;
    width: min( (590 / 750) * 100vw, 590px );
    margin: 0 auto;
  }
  .mod_cv .mod_cv_wrapper .mod_cv_btn {
    width: min( (590 / 750) * 100vw, 590px );
  }
  .mod_cv .mod_cv_lead {
    font-size: min( (32 / 750) * 100vw, 32px );
    margin-bottom: min( (8 / 750) * 100vw, 8px );
  }
  .mod_cv .mod_cv_lead.-mt {
    margin-top: min( (40 / 750) * 100vw, 40px );
  }
  .mod_cv .mod_cv_note {
    font-size: min( (20 / 750) * 100vw, 20px );
    margin-top: min( (40 / 750) * 100vw, 40px );
  }
}

.mod_accordion {
  padding: 0 0 min( (8 / 1080) * 100vw , 8px );
}
.mod_accordion .mod_acc_header {
  position: relative;
  border-top: min( (1 / 1080) * 100vw , 1px ) solid var(--base-ddd, #DDD);
  padding: min( (24 / 1080) * 100vw , 24px ) max( (0 / 1080) * 100vw , 0px ) min( (16 / 1080) * 100vw , 16px );
}
.mod_accordion .mod_acc_header:hover {
  cursor: pointer;
}
.mod_accordion .mod_acc_header:before {
  content: "";
  display: block;
  background-image: url("../images/ico_acc_01.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: min( (32 / 1080) * 100vw , 32px );
  height: min( (32 / 1080) * 100vw , 32px );
  position: absolute;
  right: max( (0 / 1080) * 100vw , 0px );
  top: min( (24 / 1080) * 100vw , 24px );
}
.mod_accordion .mod_acc_header.open:before {
  background-image: url("../images/ico_acc_02.png");
}
.mod_accordion .mod_acc_header_txt {
  font-weight: 700;
  font-size: min( (20 / 1080) * 100vw , 20px );
  line-height: 160%;
  color: #005EAE;
}
.mod_accordion .mod_acc_inner {
  display: none;
  padding: 0 0 min( (16 / 1080) * 100vw , 16px );
}
.mod_accordion .mod_acc_flex {
  display: flex;
  flex-wrap: wrap;
  gap: min( (24 / 1080) * 100vw , 24px );
}
.mod_accordion .mod_acc_btn {
  flex: 0 0 min( (312 / 1080) * 100vw , 312px );
}
.mod_accordion .mod_acc_btn_link {
  height: min( (59 / 1080) * 100vw , 59px );
  padding: min( (8 / 1080) * 100vw , 8px ) min( (16 / 1080) * 100vw , 16px );
  border-radius: min( (8 / 1080) * 100vw , 8px );
  border: min( (1 / 1080) * 100vw , 1px ) solid var(--accent-blue-primary, #005EAE);
  display: block;
}
.mod_accordion .mod_acc_btn_txt_01 {
  display: block;
  font-size: min( (14 / 1080) * 100vw , 14px );
  font-weight: 700;
  line-height: 180%;
  text-align: center;
}
.mod_accordion .mod_acc_btn_txt_02 {
  display: block;
  font-size: min( (12 / 1080) * 100vw , 12px );
  line-height: 150%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .mod_accordion {
    padding: 0 0 min( (16 / 750) * 100vw, 16px );
  }
  .mod_accordion .mod_acc_header {
    border-top: min( (2 / 750) * 100vw, 2px ) solid var(--base-ddd, #DDD);
    padding: min( (40 / 750) * 100vw, 40px ) max( (0 / 1080) * 100vw , 0px ) min( (24 / 750) * 100vw, 24px );
  }
  .mod_accordion .mod_acc_header:before {
    width: min( (64 / 750) * 100vw, 64px );
    height: min( (64 / 750) * 100vw, 64px );
    right: max( (0 / 1080) * 100vw , 0px );
    top: min( (24 / 750) * 100vw, 24px );
  }
  .mod_accordion .mod_acc_header_txt {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .mod_accordion .mod_acc_inner {
    padding: 0 0 min( (24 / 750) * 100vw, 24px );
  }
  .mod_accordion .mod_acc_flex {
    gap: min( (24 / 750) * 100vw, 24px );
  }
  .mod_accordion .mod_acc_btn {
    flex: 0 0 min( (303 / 750) * 100vw, 303px );
  }
  .mod_accordion .mod_acc_btn_link {
    height: min( (109 / 750) * 100vw, 109px );
    padding: min( (16 / 750) * 100vw, 16px ) min( (16 / 750) * 100vw, 16px );
    border-radius: min( (56 / 750) * 100vw, 56px );
    border: min( (2 / 750) * 100vw, 2px ) solid #2DC3C3;
    position: relative;
  }
  .mod_accordion .mod_acc_btn_link:before {
    content: "";
    display: block;
    background-image: url("../images/ico_tel.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: min( (40 / 750) * 100vw, 40px );
    height: min( (40 / 750) * 100vw, 40px );
    position: absolute;
    right: min( (16 / 1080) * 100vw , 16px );
    top: 50%;
    transform: translateY(-50%);
  }
  .mod_accordion .mod_acc_btn_txt_01 {
    font-size: min( (26 / 750) * 100vw, 26px );
  }
  .mod_accordion .mod_acc_btn_txt_02 {
    font-size: min( (20 / 750) * 100vw, 20px );
  }
}

.mod_floating {
  position: fixed;
  right: min( (8 / 1080) * 100vw , 8px );
  top: 0;
  width: min( (480 / 1080) * 100vw , 480px );
  z-index: 10;
  display: flex;
  align-items: center;
}
.mod_floating .mod_floating_btn {
  flex: 0 0 min( (240 / 1080) * 100vw , 240px );
}
.mod_floating .mod_floating_btn.-green .mod_floating_btn_link {
  color: #fff;
  background-color: #2DC3C3;
  border-radius: 0px 0px 0px min( (24 / 1080) * 100vw , 24px );
  border: min( (2 / 1080) * 100vw , 2px ) solid var(--accent-green, #2DC3C3);
}
.mod_floating .mod_floating_btn.-green .mod_floating_btn_link::after {
  background-image: url("../images/ico_arrow_01_pc.png");
}
.mod_floating .mod_floating_btn.-white .mod_floating_btn_link {
  color: #2DC3C3;
  background-color: #fff;
  border-radius: 0px 0px min( (24 / 1080) * 100vw , 24px ) 0px;
  border: min( (2 / 1080) * 100vw , 2px ) solid var(--accent-green, #2DC3C3);
}
.mod_floating .mod_floating_btn.-white .mod_floating_btn_link::after {
  background-image: url("../images/ico_arrow_02_pc.png");
}
.mod_floating .mod_floating_btn_link {
  width: 100%;
  height: min( (80 / 1080) * 100vw , 80px );
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.mod_floating .mod_floating_btn_link::after {
  content: "";
  display: block;
  position: absolute;
  background-size: contain;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  width: min( (9 / 1080) * 100vw , 9px );
  height: min( (14 / 1080) * 100vw , 14px );
  top: 50%;
  transform: translateY(-50%);
  right: min( (15 / 1080) * 100vw , 15px );
}
.mod_floating .mod_floating_btn_small {
  font-size: min( (14 / 1080) * 100vw , 14px );
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.03em;
  display: block;
}
.mod_floating .mod_floating_btn_small span {
  font-size: min( (18 / 1080) * 100vw , 18px );
}
.mod_floating .mod_floating_btn_main {
  font-size: min( (20 / 1080) * 100vw , 20px );
  font-weight: 700;
  line-height: 120%;
  letter-spacing: 0.03em;
  display: block;
}
@media screen and (max-width: 767px) {
  .mod_floating {
    top: auto;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .mod_floating .mod_floating_btn {
    flex: 0 0 min( (375 / 750) * 100vw, 375px );
  }
  .mod_floating .mod_floating_btn.-green .mod_floating_btn_link {
    border-radius: min( (40 / 750) * 100vw, 40px ) 0px 0px 0px;
    border: min( (4 / 750) * 100vw, 4px ) solid var(--accent-green, #2DC3C3);
  }
  .mod_floating .mod_floating_btn.-green .mod_floating_btn_link::after {
    background-image: url("../images/ico_arrow_01_sp.png");
  }
  .mod_floating .mod_floating_btn.-white .mod_floating_btn_link {
    border-radius: 0px min( (40 / 750) * 100vw, 40px ) 0 0px;
    border: min( (4 / 750) * 100vw, 4px ) solid var(--accent-green, #2DC3C3);
  }
  .mod_floating .mod_floating_btn.-white .mod_floating_btn_link::after {
    background-image: url("../images/ico_arrow_02_sp.png");
  }
  .mod_floating .mod_floating_btn_link {
    width: 100%;
    height: min( (120 / 750) * 100vw, 120px );
  }
  .mod_floating .mod_floating_btn_link::after {
    width: min( (14 / 750) * 100vw, 14px );
    height: min( (20 / 750) * 100vw, 20px );
    right: min( (24 / 750) * 100vw, 24px );
  }
  .mod_floating .mod_floating_btn_small {
    font-size: min( (24 / 750) * 100vw, 24px );
  }
  .mod_floating .mod_floating_btn_small span {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .mod_floating .mod_floating_btn_main {
    font-size: min( (32 / 750) * 100vw, 32px );
  }
  .mod_floating .mod_floating_btn_main.-splarge {
    font-size: min( (40 / 750) * 100vw, 40px );
  }
}