﻿@charset "utf-8";
/* CSS Document */

body {
    color: #000000;
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 16px;
    font-weight: 500;
    font-style: normal;
    font-feature-settings: "palt";
    position: relative;
    margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
th,
dt,
a {
    line-height: 1.5;
    font-weight: 700;
}

p,
li,
td,
dd,
span,
div {
    line-height: 1.5;
    font-weight: 500;
}

a {
    color: #000000;
    text-decoration: none;
    transition: all 0.1s;
}

a:hover {
    opacity: 0.7;
}

img {
    border: none;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
}

a img {
    border: none;
}

a.nolink {
    pointer-events: none;
}

ul {
    list-style-type: none;
}

table {
    border-collapse: collapse;
}

.clearfix:after {
    content: "";
    display: block;
    overflow: hidden;
    clear: both;
}

.fix-flex {
    display: flex;
}

.leftBox {
    float: left;
}

.rightBox {
    float: right;
}

.center {
    text-align: center;
}

.c_white {
    color: #FFFFFF;
}

.sp {
    display: none !important;
}

.spacer {
    width: 100%;
}

.contentWidth {
    width: 92%;
    max-width: 1200px;
    margin: auto auto auto auto;
}

h2.style001 {
    font-size: clamp(1.5rem, 1.149rem + 1.76vw, 3.125rem);
    color: #FFFFFF;
    line-height: 1;
    font-family: "murecho", sans-serif;
    font-weight: 900;
    font-style: normal;
    padding-bottom: 40px;
    position: relative;
    text-align: center;
}

h2.style001 span {
    font-size: clamp(1.875rem, 1.416rem + 2.3vw, 4rem);
    font-weight: 900;
    white-space: nowrap;
    margin: 0 clamp(0.438rem, 0.329rem + 0.54vw, 0.938rem);
}

h2.style001::after {
    content: "";
    max-width: 593px;
    width: 100%;
    height: 14px;
    background: url("../images/bg_h2_001.png") no-repeat center center;
    position: absolute;
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

h2.style002 {
    font-size: clamp(1.5rem, 1.149rem + 1.76vw, 3.125rem);
    color: #177EAD;
    line-height: 1;
    font-family: "murecho", sans-serif;
    font-weight: 900;
    font-style: normal;
    padding-bottom: 40px;
    position: relative;
    text-align: center;
}

h2.style002 span {
    font-size: clamp(1.875rem, 1.416rem + 2.3vw, 4rem);
    font-weight: 900;
    white-space: nowrap;
    margin: 0 clamp(0.438rem, 0.329rem + 0.54vw, 0.938rem);
}

h2.style002::after {
    content: "";
    max-width: 593px;
    width: 100%;
    height: 14px;
    background: url("../images/bg_h2_002.png") no-repeat center center;
    position: absolute;
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

@media (max-width: 768px) {
    body {
        font-size: 14px;
    }

    .pc {
        display: none !important;
    }

    .sp {
        display: block !important;
    }

    .leftBox {
        float: none !important;
    }

    .rightBox {
        float: none !important;
    }

    .contentWidth {
        width: calc(100% - 40px);
    }
}

.large-button {
    --button-width: clamp(300px, 235.136px + 20.27vw, 600px);
    --button-height: clamp(40px, 31.344px + 2.7vw, 80px);
    --button-float: clamp(4px, 3.136px + 0.27vw, 8px);
    --button-color: #177EAD;
    --button-shadow-color: #24ABE9;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    background-image: url(../images/icon_button_proceed.svg);
    background-repeat: no-repeat;
    background-position: right 35px center;
    background-size: clamp(18px, 14.112px + 1.22vw, 36px) auto;
    background-color: var(--button-color);

    border: none;
    border-radius: clamp(20px, 15.68px + 1.35vw, 40px);
    box-shadow: var(--button-float) var(--button-float) 0 0 var(--button-shadow-color);

    color: #FFFFFF;
    font-size: clamp(1.25rem, 1.115rem + 0.68vw, 1.875rem);
    font-weight: bold;

    position: relative;

    height: var(--button-height);
    width: var(--button-width);
    z-index: 40;

    transition: 0.2s;
}

.large-button:not(:disabled):hover {
    opacity: 1;
    box-shadow: 0 0 0 0 var(--button-shadow-color);
    transform: translate(var(--button-float), var(--button-float));
}

.large-button:disabled {
    filter: saturate(0);
}

/*--------------------------------------
    header
--------------------------------------*/

.header {
    display: flex;
    align-items: center;
    gap: clamp(10px, 7.84px + 0.68vw, 20px);

    box-sizing: border-box;

    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;

    margin: auto;

    height: 100px;
    width: 100%;
    box-sizing: border-box;
    padding: 9px 10px 9px 10px;

    z-index: 9999;

    transition: all 0.3s;
}

.header--scrolled {
    background: white;
}

.header h1 {
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 476 / 98;

    position: relative;
    margin-right: auto;

    height: 98%;
    width: auto;
    z-index: 9999;
}

.header h1 img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    transition: 0.3s;
}

.header h1 img.logosp {
    opacity: 0;
}

.header.select h1 img.logosp {
    opacity: 1;
}

@media (max-width: 1024px) {
    .header {

    height: 70px;
}

    header h1 {
        z-index: 9980;
    }
}

.header__contact {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;

    background: #177EAD;
    border-radius: 9999px;

    z-index: 9999;

    height: 90%;
    width: auto;
    aspect-ratio:1 / 1;
    margin-right: 10px;
}

.header__contact__img {
    height: 40%;
    width: auto;
}

.header__contact__text {
    color: white;
    font-size: clamp(1.125rem, 1.044rem + 0.41vw, 1.5rem);
    font-weight: bold;
}

@media (max-width: 768px) {
    .header__contact {
        aspect-ratio: 1 / 1;
        padding: 0;
    }

    .header__contact__text {
        display: none;
    }
}

@media (max-width: 480px) {
    .header__contact {
        display: none;
    }
}

.header .gnav ul{
    display: flex;
    justify-content: center;
    align-items: center;
    gap:20px;
    margin-right: 20px;
}
.header .gnav ul li{
    list-style: none;
}
.header .gnav ul li a span{
    font-weight: bold;
}
.header .spbtn{
    display: none;
}
.header .spmenu{
    display: none;
}
@media (max-width: 1024px) {
    .header .gnav{
        display: none;
    }
    .header .spbtn {
    display: block;
    margin: 0;
    aspect-ratio: 1 / 1;
    cursor: pointer;
    width: auto;
    height: 90%;
    z-index: 10000;
    background: #177EAD;
    position: relative;
    border-radius: 50%;
    transition: all 0.1s;
}

.header .spbtn:hover {
    opacity: 0.7;
}

.header .spbtn,
.header .spbtn span {
    display: inline-block;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    box-sizing: border-box;
}

.header .spbtn span {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    width: calc(100% * (38 / 90));
    height: 3px;
    background-color: #FFFFFF;
    transition: 0.3s;
}

.header .spbtn span:nth-of-type(1) {
    top: calc(100% * (27 / 90) - 1.5px);
}

.header .spbtn span:nth-of-type(2) {
    top: calc(100% * (45 / 90) - 1.5px);
}

.header .spbtn span:nth-of-type(3) {
    top: calc(100% * (64 / 90) - 1.5px);
}

.header.select .spbtn span:nth-of-type(1) {
    top: 50%;
    transform-origin: 50% 50%;
    transform: rotate(-45deg);
}

.header.select .spbtn span:nth-of-type(2) {
    opacity: 0;
}

.header.select .spbtn span:nth-of-type(3) {
    top: 50%;
    transform-origin: 50% 50%;
    transform: rotate(45deg);
}

.header .spmenu {
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 9990;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    overflow-y: scroll;
    background: url("../images/bg_menu.jpg") no-repeat center center/cover;
    transform: translate(0, -100%);
    padding: 0 0 0 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.header .spmenu:after {
    content: "";
    background: rgba(23, 126, 173, 0.6);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
}

.header.select .spmenu {
    transform: translate(0, 0);
}

.header .spmenu ul {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: clamp(20px, -2.272px + 6.96vw, 123.008px);
    row-gap: 16px;
    position: relative;
    width: clamp(280px, 81.088px + 62.16vw, 1200px);
    z-index: 60;
}

.header .spmenu ul li {
    display: contents;
}

.header .spmenu ul li a {
    font-size: clamp(1.125rem, 1.071rem + 0.27vw, 1.375rem);
    color: #FFFFFF;
    line-height: 1;
    display: grid;
    grid-template-columns: subgrid;
    grid-column: span 2;
    align-items: center;
    position: relative;
    font-weight: bold;
    word-break: auto-phrase;
}

.header .spmenu ul li a span {
    display: block;
    font-size: clamp(2rem, 1.568rem + 2.16vw, 4rem);
    font-weight: 600;
    line-height: 1;
}

    .header .spmenu {
        overflow-y: auto;
    }

    .header .spmenu ul {
        grid-template-columns: 1fr;
    }

    .header .spmenu ul li a {
        display: grid;
        grid-template-rows: auto auto;
        grid-column: 1;
    }
}

/*--------------------------------------
    visualArea
--------------------------------------*/

.visualArea {
    display: flex;
    align-items: end;

    background-color: white;
    box-sizing: border-box;
    clip-path: polygon(0 0, 0 calc(100% - 6vw), 50% 100%, 100% calc(100% - 6vw), 100% 0);

    overflow: hidden;
    position: relative;

    padding: clamp(84px, 65.84px + 5.68vw, 168px) clamp(20px, 14.592px + 1.69vw, 45.008px) clamp(50px, 17.568px + 10.14vw, 200px);

    height: clamp(500px, 424.32px + 23.65vw, 850px);
    width: 100%;
}

.visualArea::after {
    display: block;
    content: "";

    background: url("../images/bg_visual.jpg") no-repeat left center / cover, #FFFFFF;

    position: absolute;
    top: 0;
    left: 40%;

    height: 100%;
    width: 60%;

    z-index: -1;
}

@media (max-width: 1000px) {
    .visualArea {
        background: linear-gradient(to bottom,
                rgba(255, 255, 255, 0) 40%,
                rgba(255, 255, 255, 0.5) 60%,
                rgba(255, 255, 255, 1) 100%), url("../images/bg_visual.jpg") no-repeat left center/cover, #FFFFFF;
    }

    .visualArea::after {
        display: none;
    }
}

.visualArea h2 {
    display: flex;
    flex-direction: column;
    row-gap: clamp(10px, 7.84px + 0.68vw, 20px);
    margin-bottom: clamp(15.008px, 11.76px + 1.01vw, 30px);
}

.visualArea h2 span.line001,
.visualArea h2 span.line002,
.visualArea h2 span.line003 {
    display: flex;
    align-items: end;
    column-gap: clamp(4px, 3.136px + 0.27vw, 8px);

    color: #000000;
    font-size: clamp(1rem, 0.541rem + 2.3vw, 3.125rem);
    font-family: "murecho", sans-serif;
    font-weight: 900;
    font-style: normal;
    line-height: 1;
}

.visualArea h2 span.style001 {
    color: #177EAD;
    font-size: clamp(1.25rem, 0.709rem + 2.7vw, 3.75rem);
    font-family: "murecho", sans-serif;
    font-weight: 900;
    font-style: normal;
    line-height: 1;
}

.visualArea h2 span.style002 {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    aspect-ratio: 1 / 1;
    background: #177EAD;

    color: #FFFFFF;
    font-size: clamp(1.25rem, 0.709rem + 2.7vw, 3.75rem);
    font-family: "murecho", sans-serif;
    font-weight: 900;
    font-style: normal;
    line-height: 1;

    padding-bottom: 6px;
    height: auto;
    width: clamp(1.625rem, 0.895rem + 3.65vw, 5rem);
    vertical-align: bottom;
}

.visualArea .text {
    --border-color: #177EAD;
    --border-size: clamp(3.008px, 2.56px + 0.14vw, 5.008px);
    --square-size: clamp(6px, 4.704px + 0.41vw, 12px);
    --padding: clamp(9.008px, 7.056px + 0.61vw, 18px);

    --white-size: calc(100% - var(--square-size) * 2);
    --total-border-size: calc(var(--square-size) + var(--border-size));
    --content-size: calc(100% - var(--total-border-size) * 2);
    --padding-size: calc(var(--padding) + var(--total-border-size));

    display: flex;
    align-items: center;
    justify-content: center;

    background:
        linear-gradient(white) center center / var(--content-size) var(--content-size) no-repeat,
        linear-gradient(white) left center/ var(--square-size) var(--white-size)no-repeat,
        linear-gradient(white) right center / var(--square-size) var(--white-size)no-repeat,
        linear-gradient(white) top center / var(--white-size) var(--square-size) no-repeat,
        linear-gradient(white) bottom center / var(--white-size) var(--square-size) no-repeat,
        var(--border-color);
    border: var(--border-size) solid var(--border-color);
    box-sizing: border-box;

    font-size: clamp(0.75rem, 0.493rem + 1.28vw, 1.938rem);
    font-family: "murecho", sans-serif;
    font-weight: 900;
    font-style: normal;
    line-height: 1.3;

    position: relative;
    padding: var(--padding-size);

    max-width: 100%;
    width: clamp(280px, 190.48px + 27.97vw, 694px);
}

/*--------------------------------------
    problemArea
--------------------------------------*/

.problemArea {
    padding: clamp(40px, 31.344px + 2.7vw, 80px) 0 clamp(60px, 47.024px + 4.05vw, 120px);
    position: relative;
    background: #177EAD;
}

.problemArea::before {
    content: "";
    width: 100%;
    height: 6vw;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    top: auto;
    z-index: -1;
    display: block;
    background: #177EAD;
}

.problemArea::after {
    content: "";
    width: 300px;
    height: 40px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    display: block;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    background: #177EAD;
}

.problemArea h2.style001 {
    margin-bottom: clamp(37.008px, 29.008px + 2.5vw, 74px);
}

.problemArea .inner {
    display: grid;
    justify-content: center;
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr auto 1fr;
    gap: clamp(16px, 12.544px + 1.08vw, 32px);
}

.problemArea .inner .text {
    font-size: clamp(1.125rem, 1.071rem + 0.27vw, 1.375rem);
    font-weight: bold;
    line-height: 1.6;
    color: #FFFFFF;
    text-align: left;
    word-break: auto-phrase;
}

.problemArea .inner .textBox {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border: 3px solid #FFFFFF;
    border-radius: clamp(8px, 6.048px + 0.61vw, 17.008px);
    position: relative;
    padding: 0 clamp(16px, 11.888px + 1.28vw, 35.008px);
    height: clamp(90px, 83.52px + 2.03vw, 120px);
    width: clamp(300px, 278.384px + 6.76vw, 400px);
}

.problemArea .inner .textBox::after {
    display: flex;
    align-items: center;
    justify-content: center;

    content: "";

    aspect-ratio: 41 / 43;
    background: url("../images/icon_problem.png") no-repeat center center/contain;

    position: absolute;
    top: calc(-1 * clamp(9.008px, 7.056px + 0.61vw, 18px));
    left: calc(-1 * clamp(4px, 3.136px + 0.27vw, 8px));

    height: auto;
    width: clamp(22px, 17.888px + 1.28vw, 41.008px);
}

.problemArea .inner .textBox.text001 {
    grid-row: 1;
    grid-column: 1 / 4;
    margin: 0 auto;
}

.problemArea .inner .textBox.text002 {
    grid-row: 2;
    grid-column: 1;
    margin-left: auto;
    margin-right: -30px;
}

.problemArea .inner .textBox.text003 {
    grid-row: 2;
    grid-column: 3;
    margin-left: -30px;
}

.problemArea .inner .textBox.text004 {
    grid-row: 3;
    grid-column: 1;
    margin-left: auto;
    margin-right: 20px;
}

.problemArea .inner .textBox.text005 {
    grid-row: 3;
    grid-column: 3;
    margin-left: 20px;
}

.problemArea .inner img {
    grid-row: 2 / 5;
    grid-column: 2;
    margin: auto;
    width: clamp(140px, 120.112px + 6.22vw, 232px);
}

@media (max-width: 1024px) {
    .problemArea .inner {
        justify-content: center;
        grid-template-rows: initial;
        grid-template-columns: 1fr 1fr;
        margin: 0 auto;
        width: fit-content;
    }

    .problemArea .inner .textBox.text001 {
        grid-row: 1;
        grid-column: span 2;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner .textBox.text002 {
        grid-row: 2;
        grid-column: 1;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner .textBox.text003 {
        grid-row: 2;
        grid-column: 2;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner .textBox.text004 {
        grid-row: 3;
        grid-column: 1;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner .textBox.text005 {
        grid-row: 3;
        grid-column: 2;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner img {
        grid-row: 4;
        grid-column: span 2;
        margin: auto;
    }
}

@media (max-width: 768px) {
    .problemArea .inner {
        grid-template-rows: initial;
        grid-template-columns: 1fr;
    }

    .problemArea .inner .text {
        text-align: center;
    }

    .problemArea .inner .textBox {
        width: 80%;
    }

    .problemArea .inner .textBox.text001 {
        grid-row: 1;
        grid-column: 1;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner .textBox.text002 {
        grid-row: 2;
        grid-column: 1;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner .textBox.text003 {
        grid-row: 3;
        grid-column: 1;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner .textBox.text004 {
        grid-row: 4;
        grid-column: 1;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner .textBox.text005 {
        grid-row: 5;
        grid-column: 1;
        margin-left: auto;
        margin-right: auto;
    }

    .problemArea .inner img {
        grid-row: 6;
        grid-column: 1;
        margin: auto;
    }
}


/*--------------------------------------
    linkArea
--------------------------------------*/

.linkArea {
    box-sizing: border-box;
    padding-top: 40px;
    background: #F1F1F1;
}

.linkArea .contentWidth {
    height: 390px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.linkArea .contentWidth .inner {
    padding-bottom: clamp(27.008px, 20.944px + 1.89vw, 55.008px);
    text-align: center;
}

.linkArea .contentWidth .inner .text {
    font-size: clamp(1rem, 0.919rem + 0.41vw, 1.375rem);
    font-weight: bold;
    margin-bottom: 20px;
}

.linkArea .contentWidth .inner .text strong {
    font-size: clamp(1.5rem, 1.338rem + 0.81vw, 2.25rem);
    font-weight: bold;
    line-height: 1.4;
}

.linkArea .contentWidth .inner .btn {
    width: clamp(304px, 238.272px + 20.54vw, 608px);
    height: clamp(44px, 34.48px + 2.97vw, 88px);
    margin: 0 auto;
    position: relative;
}

.linkArea .contentWidth .inner .btn::after {
    content: "";
    width: clamp(300px, 235.136px + 20.27vw, 600px);
    height: clamp(40px, 31.344px + 2.7vw, 80px);
    position: absolute;
    right: 0;
    bottom: 0;
    background: #24ABE9;
    border-radius: clamp(20px, 15.68px + 1.35vw, 40px);
    z-index: 20;
}

.linkArea .contentWidth .inner .btn a {
    width: clamp(300px, 235.136px + 20.27vw, 600px);
    height: clamp(40px, 31.344px + 2.7vw, 80px);
    font-size: clamp(1.25rem, 1.115rem + 0.68vw, 1.875rem);
    font-weight: bold;
    color: #FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    left: 0;
    background: #177EAD;
    border-radius: 40px;
    z-index: 40;
    transition: 0.3s;
}

.linkArea .contentWidth .inner .btn a::after {
    content: "";
    aspect-ratio: 1 / 1;
    background-image: url(../images/icon_button_proceed.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    width: clamp(1.125rem, 0.882rem + 1.22vw, 2.25rem);
    height: auto;
    position: absolute;
    top: 0;
    left: auto;
    right: 35px;
    bottom: 0;
    margin: auto;
}

.linkArea .contentWidth .inner .btn:hover a {
    opacity: 1;
    transform: translate(clamp(4px, 3.136px + 0.27vw, 8px), clamp(4px, 3.136px + 0.27vw, 8px));
}

.linkArea .contentWidth>img {
    width: clamp(140px, 104.752px + 11.01vw, 303.008px);
}

@media (max-width: 1024px) {
    .linkArea .contentWidth {
        height: auto;
        flex-wrap: wrap;
        justify-content: center;
        padding-top: clamp(30px, 23.52px + 2.03vw, 60px);
    }
}

/*--------------------------------------
    pointArea
--------------------------------------*/

.pointArea {
    padding: clamp(45.008px, 35.264px + 3.04vw, 90px) 0 clamp(75.008px, 58.784px + 5.07vw, 150px) 0;
}

.pointArea h2.style002 {
    margin-bottom: clamp(50px, 39.184px + 3.38vw, 100px);
}

.pointArea .boxArea {
    background: url("../images/bg_point.png") no-repeat 36px 275px;
}

.pointArea .boxArea .box {
    height: 550px;
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 1fr;
    column-gap: clamp(50px, 39.184px + 3.38vw, 100px);
    row-gap: clamp(30px, 25.68px + 1.35vw, 50px);
}

.pointArea .boxArea .box:nth-child(2n+1) {
    margin-bottom: 23px;
}

.pointArea .boxArea .box:nth-child(2n) {
    margin-bottom: 67px;
}

.pointArea .boxArea .box:nth-child(2n) *:nth-child(1) {
    order: 2;
}

.pointArea .boxArea .box:nth-child(2n) *:nth-child(2) {
    order: 1;
}

.pointArea .boxArea .box .picArea {
    margin: 0 auto;
    width: 100%;
}

.pointArea .boxArea .box .picArea img {
    display: block;
    aspect-ratio: 1 / 1;
    filter: drop-shadow(clamp(5.008px, 3.92px + 0.34vw, 10px) clamp(5.008px, 3.92px + 0.34vw, 10px) 0px #24ABE9);
    height: auto;
    width: 100%;
    z-index: 40;
}

.pointArea .boxArea .box .number {
    display: flex;
    align-items: center;
    gap: clamp(5.008px, 3.92px + 0.34vw, 10px);
    color: #177EAD;
    font-size: clamp(1.563rem, 1.225rem + 1.69vw, 3.125rem);
    font-family: "murecho", sans-serif;
    font-weight: 600;
    font-style: normal;
    line-height: 1;
    margin-bottom: clamp(30px, 20.272px + 3.04vw, 75.008px);
}

.pointArea .boxArea .box .number span {
    font-size: clamp(3.125rem, 2.449rem + 3.38vw, 6.25rem);
    color: #177EAD;
    font-family: "murecho", sans-serif;
    font-weight: 600;
    font-style: normal;
    display: flex;
    align-items: center;
    line-height: 1;
    position: relative;
    padding-bottom: 6px;
    z-index: -1;
}

.pointArea .boxArea .box h3 {
    font-size: clamp(1.875rem, 1.47rem + 2.03vw, 3.75rem);
    font-weight: bold;
    margin-bottom: clamp(12px, 9.184px + 0.88vw, 25.008px);
    color: #177EAD;
}

.pointArea .boxArea .box .text {
    font-size: clamp(1rem, 0.946rem + 0.27vw, 1.25rem);
    font-weight: bold;
    line-height: 2;
}

@media (max-width: 1100px) {
    .pointArea .boxArea {
        background: none;
    }

    .pointArea .boxArea .box .picArea {
        width: clamp(220px, 148.656px + 22.3vw, 550px);
    }

    .pointArea .boxArea .box {
        grid-template-columns: 1fr;
        margin: 0 auto;
        height: auto;
    }

    .pointArea .boxArea .box:nth-child(2n) *:nth-child(1) {
        order: inherit;
    }

    .pointArea .boxArea .box:nth-child(2n) *:nth-child(2) {
        order: inherit;
    }

    .pointArea .boxArea .box .textArea {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .pointArea .boxArea .box h3 {
        text-align: center;
        word-break: auto-phrase;
    }

    .pointArea .boxArea .box .text {
        text-align: center;
    }
}

/*--------------------------------------
    supportArea
--------------------------------------*/

.supportArea {
    padding: clamp(40px, 31.344px + 2.7vw, 80px) 0 clamp(55.008px, 43.104px + 3.72vw, 110px);
    position: relative;
    background: #177EAD;
    text-align: center;
}

.supportArea::after {
    content: "";
    width: 300px;
    height: 40px;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    bottom: auto;
    margin: auto;
    display: block;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    background: #177EAD;
}

.supportArea h2.style001 {
    margin-bottom: clamp(15.008px, 11.76px + 1.01vw, 30px);
}

.supportArea .desc {
    font-size: clamp(1rem, 0.946rem + 0.27vw, 1.25rem);
    font-weight: bold;
    color: #FFFFFF;
    margin-bottom: clamp(30px, 23.52px + 2.03vw, 60px);
}

.supportArea .boxArea {
    background: #FFFFFF;
    padding: clamp(35.008px, 27.44px + 2.36vw, 70px) clamp(25.008px, 19.6px + 1.69vw, 50px) clamp(55.008px, 43.104px + 3.72vw, 110px) clamp(25.008px, 19.6px + 1.69vw, 50px);
    border-radius: clamp(10px, 7.84px + 0.68vw, 20px);
    box-sizing: border-box;
    display: grid;
    gap: clamp(45.008px, 35.264px + 3.04vw, 90px);
}

.supportArea .boxArea .box:not(:nth-child(1)) {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

@media (max-width: 1024px) {
    .supportArea .boxArea .box:not(:nth-child(1)) {
        flex-wrap: wrap;
    }
}

.supportArea .boxArea .box:nth-child(2n+1) {
    flex-direction: row-reverse;
}

.supportArea .boxArea .box:not(:nth-child(1)) .picArea {
    margin: 0 auto;
    width: clamp(260px, 203.776px + 17.57vw, 520px);
}

.supportArea .boxArea .box:nth-child(1) .picArea {
    float: right;
    width: clamp(230px, 180.272px + 15.54vw, 460px);
}

@media (max-width: 1024px) {
    .supportArea .boxArea .box:nth-child(1) .picArea {
        float: none;
        margin: 0 auto clamp(20px, 15.68px + 1.35vw, 40px);
    }
}

.supportArea .boxArea .box .textArea {
    text-align: left;
}

.supportArea .boxArea .box:not(:nth-child(1)) .textArea {
    width: 540px;
}

@media (max-width: 1024px) {
    .supportArea .boxArea .box:not(:nth-child(1)) .textArea {
        width: auto
    }
}

.supportArea .boxArea .box .textArea h3 {
    font-size: clamp(1.25rem, 1.115rem + 0.68vw, 1.875rem);
    font-weight: bold;
    color: #177EAD;
    display: flex;
    align-items: center;
    gap: clamp(12px, 9.184px + 0.88vw, 25.008px);
    margin-bottom: clamp(15.008px, 11.76px + 1.01vw, 30px);
}

.supportArea .boxArea .box .textArea h3 span {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    background: #177EAD;
    color: #FFFFFF;
    font-size: clamp(1.563rem, 1.225rem + 1.69vw, 3.125rem);
    font-weight: 500;
    font-family: "murecho", sans-serif;
    font-style: normal;
    height: auto;
    width: clamp(2.313rem, 1.799rem + 2.57vw, 4.688rem);
}

.supportArea .boxArea .box .textArea .text {
    font-size: clamp(1rem, 0.973rem + 0.14vw, 1.125rem);
    line-height: 1.7777;
}

@media (max-width: 768px) {}

/*--------------------------------------
    planArea
--------------------------------------*/

.planArea {
    margin: clamp(40px, 31.344px + 2.7vw, 80px) auto clamp(50px, 39.184px + 3.38vw, 100px) auto;
}

.planArea h2.style002 {
    margin-bottom: clamp(25.008px, 19.6px + 1.69vw, 50px);
}

.planArea .introArea dl {
    display: grid;
    grid-template-columns: 180px auto;
    gap: clamp(15.008px, 11.76px + 1.01vw, 30px) clamp(12px, 9.184px + 0.88vw, 25.008px);
}

.planArea .introArea dl dt {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #FFFFFF;
    font-size: 1.25rem;
    font-weight: bold;
    padding: 4px;
}

.planArea .introArea dl dt:nth-of-type(1) {
    background: #24ABE9;
}

.planArea .introArea dl dt:nth-of-type(2) {
    background: #FF7133;
}

.planArea .introArea dl dt:nth-of-type(3) {
    background: #177EAD;
}

.planArea .introArea dl dd {
    line-height: 2;
}

@media (max-width: 768px) {
    .planArea .introArea dl {
        grid-template-columns: auto;
    }
}

.planArea .planContent {
    margin-top: clamp(35.008px, 27.44px + 2.36vw, 70px);
}

.planArea .planContent h3 {
    font-size: clamp(1.5rem, 1.284rem + 1.08vw, 2.5rem);
    color: #177EAD;
    font-family: "murecho", sans-serif;
    font-weight: 900;
    font-style: normal;
    text-align: center;
    margin-bottom: clamp(15.008px, 11.76px + 1.01vw, 30px);
}

.planArea .planContent table {
    border-spacing: 0;
    min-width: 600px;
    width: 100%;
}

.planArea .planContent table thead th:not(:empty) {
    height: clamp(50px, 45.68px + 1.35vw, 70px);
    position: relative;
    color: #FF7133;
    font-size: clamp(1.5rem, 1.419rem + 0.41vw, 1.875rem);
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
    background: #FFDDB5;
    border-radius: clamp(7.008px, 5.264px + 0.54vw, 15.008px) clamp(7.008px, 5.264px + 0.54vw, 15.008px) 0 0;
}

.planArea .planContent table tbody th {
    padding: 4px 8px;
    width: 290px;
    font-size: clamp(1rem, 0.946rem + 0.27vw, 1.25rem);
    font-weight: bold;
    text-align: left;
    word-break: auto-phrase;
    vertical-align: middle;
}

.planArea .planContent table tbody td {
    padding: 4px 8px;
    width: 310px;
    height: 100px;
    font-size: clamp(1rem, 0.946rem + 0.27vw, 1.25rem);
    font-weight: bold;
    color: #FFFFFF;
    text-align: center;
    word-break: auto-phrase;
    vertical-align: middle;
}

.planArea .planContent table tbody tr:nth-child(1) td {
    height: 130px;
    font-size: clamp(1.25rem, 1.115rem + 0.68vw, 1.875rem);
    font-weight: bold;
}

.planArea .planContent table tbody tr td:not(:first-child) {
    border-top: 1px solid white;
    border-bottom: 1px solid white;
}

.planArea .planContent table tbody tr td:nth-of-type(1) {
    background: #24ABE9;
}

.planArea .planContent table tbody tr td:nth-of-type(2) {
    background: #FF7133;
}

.planArea .planContent table tbody tr td:nth-of-type(3) {
    background: #177EAD;
}

.planArea .planContent table tbody tr td[colspan="3"] {
    width: auto;
    background: #67a7c5;
}

.planArea .planContent table tbody td span.mark {
    font-size: clamp(1.875rem, 1.605rem + 1.35vw, 3.125rem);
    color: #FFFFFF;
    line-height: 1;
    text-align: center;
    font-family: "kozuka-gothic-pro", sans-serif;
    font-weight: 900;
    font-style: normal;
}

.planArea .planContent table tbody td span.comment {
    font-size: 1rem;
    color: #FFFFFF;
}

@media (max-width: 768px) {}

/*--------------------------------------
    flowArea
--------------------------------------*/

.flowArea {
    padding: clamp(40px, 31.344px + 2.7vw, 80px) 0 clamp(55.008px, 43.104px + 3.72vw, 110px);
    position: relative;
    background: #177EAD;
    text-align: center;
}

.flowArea h2.style001 {
    margin-bottom: clamp(20px, 15.68px + 1.35vw, 40px);
}

.flowArea .desc {
    font-size: clamp(1rem, 0.946rem + 0.27vw, 1.25rem);
    font-weight: bold;
    color: #FFFFFF;
    margin-bottom: clamp(25.008px, 19.6px + 1.69vw, 50px);
}

.flowArea ul {
    display: grid;
    align-items: end;
    justify-content: center;
    grid-template-columns: repeat(5, 1fr);
    column-gap: clamp(11.008px, 8.624px + 0.74vw, 22px);
    row-gap: clamp(22px, 17.248px + 1.49vw, 44px);
    margin: 0 auto;
    width: fit-content;
}

.flowArea ul li {
    --item-width: 132px;

    display: grid;
    align-items: center;
    justify-items: center;
    grid-template-columns: var(--item-width);
    grid-template-rows: auto auto 1fr;
    row-gap: clamp(15.008px, 11.76px + 1.01vw, 30px);

    height: 100%;
}

.flowArea ul li:not(:last-child) {
    grid-template-columns: var(--item-width) auto;
    column-gap: clamp(11.008px, 8.624px + 0.74vw, 22px);
}

.flowArea ul li:not(:last-child)::after {
    grid-column: 2;
    grid-row: 3;

    display: block;
    content: "";
    aspect-ratio: 44 / 12;
    background: url("../images/icon_flow.png") no-repeat center bottom / contain;
    width: clamp(22px, 17.248px + 1.49vw, 44px);
}

.flowArea ul li span.number {
    grid-column: 1;

    display: flex;
    justify-content: center;
    background: url("../images/icon_step.png") no-repeat center center;
    background-size: contain;
    box-sizing: border-box;

    color: #FFFFFF;
    font-size: clamp(1.375rem, 1.064rem + 1.55vw, 2.813rem);
    text-align: center;

    position: relative;
    padding-top: clamp(24px, 18.816px + 1.62vw, 48px);
    height: auto;
    width: clamp(40px, 30.272px + 3.04vw, 85.008px);
}

.flowArea ul li span.number::after {
    content: "";
    width: 38px;
    height: 1px;
    margin: 0 auto 0 auto;
    background: #FFFFFF;
    position: absolute;
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
}

.flowArea ul li .img {
    grid-column: 1;

    display: flex;
    align-items: center;
    justify-content: center;
    height: clamp(50px, 36.816px + 4.12vw, 111px);
    text-align: center;
}

.flowArea ul li .img>img {
    display: block;
    object-fit: contain;
    margin: auto;
    height: 100%;
    width: auto;
}

.flowArea ul li:nth-child(1) .img>img {
    aspect-ratio: 95 / 70;
    max-width: 95px;
}

.flowArea ul li:nth-child(2) .img>img {
    aspect-ratio: 90 / 92;
    max-width: 90px;
}

.flowArea ul li:nth-child(3) .img>img {
    aspect-ratio: 111 / 73;
    max-width: 111px;
}

.flowArea ul li:nth-child(4) .img>img {
    aspect-ratio: 72 / 91;
    max-width: 72px;
}

.flowArea ul li:nth-child(5) .img>img {
    aspect-ratio: 97 / 93;
    max-width: 97px;
}

.flowArea ul li:nth-child(6) .img>img {
    aspect-ratio: 98 / 93;
    max-width: 98px;
}

.flowArea ul li h3 {
    grid-column: 1;

    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;

    color: #FFFFFF;
    font-size: clamp(1.125rem, 1.071rem + 0.27vw, 1.375rem);
    font-weight: bold;
    line-height: 1;
    text-align: center;

    height: 100%;
}

.flowArea ul li h3 span {
    font-size: clamp(0.75rem, 0.696rem + 0.27vw, 1rem);
}

@media (max-width: 1280px) {
    .flowArea ul {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 40px;
    }

    .flowArea ul li:not(:last-child) {
        grid-template-columns: auto;
    }

    .flowArea ul li:not(:last-child)::after {
        display: none;
    }

    .flowArea ul li h3 {
        margin-top: 0;
        margin-bottom: auto;
    }
}

@media (max-width: 768px) {
    .flowArea ul {
        grid-template-columns: repeat(2, 1fr);
    }
}

/*--------------------------------------
    faqArea
--------------------------------------*/

.faqArea {
    padding: clamp(40px, 31.344px + 2.7vw, 80px) 0 clamp(55.008px, 43.104px + 3.72vw, 110px);
    position: relative;
    background: #F1F1F1;
    text-align: center;
}

.faqArea h2.style002 {
    margin-bottom: clamp(37.008px, 28.784px + 2.57vw, 75px);
}

.faqArea h2.style002.mt50 {
    margin-top: 100px;
    margin-bottom: clamp(37.008px, 28.784px + 2.57vw, 75px);
}

.faqArea .boxArea {
    display: grid;
    gap: clamp(20px, 15.68px + 1.35vw, 40px);
}

.faqArea .boxArea .box {
    border-radius: clamp(18px, 14.112px + 1.22vw, 36px);
    background: #FFFFFF;
    padding: clamp(25.008px, 19.6px + 1.69vw, 50px) clamp(32px, 22.704px + 2.91vw, 75.008px);
}

.faqArea .boxArea .box dl {
    width: 100%;
    display: grid;
    gap: clamp(10px, 7.84px + 0.68vw, 20px);
    margin: 0 auto;
}

.faqArea .boxArea .box dl dt {
    display: grid;
    align-items: center;
    grid-template-columns: auto 1fr;
    gap: clamp(12px, 9.184px + 0.88vw, 25.008px);
    font-size: clamp(1.125rem, 1.071rem + 0.27vw, 1.375rem);
    font-weight: bold;
    text-align: left;
    color: #177EAD;
    padding-bottom: clamp(12px, 9.184px + 0.88vw, 25.008px);
    background: url("../images/bg_faq.png") repeat-x left bottom;
}

.faqArea .boxArea .box dl dt::before {
    content: "";
    aspect-ratio: 64 / 57;
    width: clamp(32px, 25.088px + 2.16vw, 64px);
    height: auto;
    background: url("../images/icon_faq.png") no-repeat center center;
    background-size: contain;
    display: block;
}

.faqArea .boxArea .box dl dd {
    font-size: clamp(1rem, 0.946rem + 0.27vw, 1.25rem);
    font-weight: bold;
    line-height: 2;
    text-align: left;
}

.blogArea .boxArea{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: clamp(20px, 15.68px + 1.35vw, 40px);
    width: 100%;
}
.blogArea .boxArea .box{
    padding: clamp(22px, 17.248px + 1.49vw, 44px) 30px clamp(18px, 14.112px + 1.22vw, 36px) 30px;
}
.blogArea .boxArea .box dl dt::before {
    content: "";
    aspect-ratio: 64 / 57;
    width: clamp(32px, 25.088px + 2.16vw, 64px);
    height: auto;
    background: url("../images/icon_faq.png") no-repeat center center;
    background-size: contain;
    display: none;
}
.blogArea .boxArea .box dl dd {
    font-size: 14px;
}
.blog-button {
    width:200px;
    height:40px;
    margin: 20px auto 0 auto;
}
.blog-button a{
    font-size:14px;
    width:100%;
    height:100%;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 20px;
    color:#FFFFFF;
    background: #177EAD;
    font-weight: bold;
}
@media (max-width: 768px) {
    .faqArea h2.style002.mt50 {
    margin-top: 50px;
}

}

/*--------------------------------------
    contactArea
--------------------------------------*/

.contactArea {
    margin: clamp(40px, 31.344px + 2.7vw, 80px) auto clamp(55.008px, 43.104px + 3.72vw, 110px) auto;
}

.contactArea h2.style002 {
    margin-bottom: clamp(15.008px, 11.76px + 1.01vw, 30px);
}

.contactArea .desc {
    font-size: clamp(1rem, 0.946rem + 0.27vw, 1.25rem);
    font-weight: bold;
    text-align: center;
    margin-bottom: clamp(25.008px, 19.6px + 1.69vw, 50px);
}

.contact-form {}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form textarea {
    background-color: #F1F1F1;
    border: none;

    font-size: clamp(1.125rem, 1.098rem + 0.14vw, 1.25rem);
    line-height: 2;

    padding: clamp(3.008px, 2.56px + 0.14vw, 5.008px);
    width: 100%;
}

.contact-form input[type="checkbox"] {
    appearance: none;
    aspect-ratio: 1 / 1;
    cursor: pointer;
    background-color: #F1F1F1;
    border: none;

    position: relative;

    width: clamp(30px, 27.84px + 0.68vw, 40px);
}

.contact-form input[type="checkbox"]::after {
    display: block;
    content: "";
    background: transparent;
    mask-image: none;
    width: 100%;
    height: 100%;
    transition: background-color 0.1s ease;
}

.contact-form input[type="checkbox"]:checked::after {
    background-color: #177EAD;
    mask-image: url('data:image/svg+xml;utf8,<svg fill="black" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M6.00039 10.8001L3.20039 8.00012L2.26672 8.93345L6.00039 12.6668L14.0004 4.66679L13.0671 3.73345L6.00039 10.8001Z"/></svg>');
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
}

.contact-form__fields {
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: clamp(12px, 9.408px + 0.81vw, 24px);
    row-gap: clamp(8px, 6.272px + 0.54vw, 16px);

    margin-bottom: clamp(24px, 18.816px + 1.62vw, 48px);
}

.contact-form__fields br {
    display: none;
}

.contact-form__fields>p {
    display: contents;
}

.contact-form__fields>p>label {
    display: contents;
}

.contact-form__fields>p>label>span:nth-of-type(1) {
    display: flex;
    align-items: center;
    gap: clamp(8px, 6.272px + 0.54vw, 16px);

    font-size: clamp(1.125rem, 1.098rem + 0.14vw, 1.25rem);
    font-weight: bold;
    line-height: 2;
}

.contact-form__fields>p>label:last-child>span:nth-of-type(1) {
    align-self: baseline;
}

.contact-form__fields>p>label>span:nth-of-type(2) {
    display: flex;
    flex-wrap: wrap;
}

.contact-form__acceptance {
    display: grid;
    align-items: center;
    justify-content: center;
    grid-template-rows: auto auto;
    gap: clamp(12px, 9.408px + 0.81vw, 24px);

    margin-bottom: clamp(27.008px, 21.168px + 1.82vw, 54px);
}

.contact-form__acceptance br {
    display: none;
}

.contact-form__acceptance>p {
    display: contents;
}

.contact-form__acceptance>p>label {
    display: contents;
}

.contact-form__acceptance>p>label>span:nth-of-type(1) {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(8px, 6.272px + 0.54vw, 16px);
}

.contact-form__acceptance .wpcf7-form-control-wrap,
.contact-form__acceptance .wpcf7-form-control,
.contact-form__acceptance .wpcf7-list-item {
    display: contents;
}

.contact-form__acceptance label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(8px, 6.272px + 0.54vw, 16px);
}

.contact-form__acceptance label>span {
    font-size: clamp(1.125rem, 1.098rem + 0.14vw, 1.25rem);
    font-weight: bold;
    line-height: 1.3;
}

.contact-form__policy {
    font-size: clamp(1.125rem, 1.098rem + 0.14vw, 1.25rem);
    font-weight: bold;
    line-height: 1.3;
}

.contact-form__policy>a {
    color: #121FDF;
    text-decoration: underline;
}

.contact-form__submit {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: clamp(12px, 9.408px + 0.81vw, 24px);
}

.contact-form__submit>p {
    display: contents;
}

.contact-form-required {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #177EAD;

    color: white;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1;
    word-break: keep-all;

    padding: clamp(4px, 3.136px + 0.27vw, 8px) 14px;
}

@media (max-width: 1024px) {
    .contact-form__fields {
        grid-template-columns: 1fr;
    }
}

/*--------------------------------------
    footer
--------------------------------------*/

footer .footerContent {
    background: #177EAD;
    padding: clamp(30px, 23.52px + 2.03vw, 60px) 0 clamp(32px, 25.088px + 2.16vw, 64px) 0;
}

footer .footerInner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: clamp(2.5rem, 1.959rem + 2.7vw, 5rem);
}

footer .footerInner .footerBox {
    width: 560px;
    padding: clamp(15.008px, 11.76px + 1.01vw, 30px) clamp(20px, 15.68px + 1.35vw, 40px) clamp(20px, 15.68px + 1.35vw, 40px);
    box-sizing: border-box;
    background: #FFFFFF;
    border-radius: clamp(15.008px, 11.76px + 1.01vw, 30px);
}

footer .footerInner .footerBox h2 {
    font-size: clamp(1.5rem, 1.338rem + 0.81vw, 2.25rem);
    font-weight: bold;
    text-align: center;
    margin-bottom: clamp(10px, 7.84px + 0.68vw, 20px);
}

footer .footerInner .footerBox .picArea {
    display: flex;
    align-items: center;
    gap: clamp(9.008px, 7.056px + 0.61vw, 18px);
    margin-bottom: clamp(12px, 9.408px + 0.81vw, 24px);
}

footer .footerInner .footerBox .picArea .detail ul li {
    font-size: clamp(1.125rem, 1.098rem + 0.14vw, 1.25rem);
    font-weight: bold;
}

footer .footerInner .footerBox .picArea .detail h3 {
    font-size: clamp(1.25rem, 1.088rem + 0.81vw, 2rem);
    font-weight: bold;
    margin-top: clamp(9.008px, 7.056px + 0.61vw, 18px);
}

footer .footerInner .footerBox .textArea .text {
    font-size: clamp(1rem, 0.973rem + 0.14vw, 1.125rem);
    line-height: 1.6666;
    font-weight: bold;
}

footer .footerInner .footerBox .textArea .text a {
    text-decoration: underline;
}

footer .copy {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 54px;
}

@media (max-width: 768px) {}