abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    word-break: break-all;
    word-wrap: break-word;
}

article,
aside,
details,
figcaption,
figure,
picture,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    background-color: #fff;
    line-height: 1;
}

blockquote,
q {
    quotes: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
    content: "";
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

ul,
ol,
li {
    list-style: none;
}

a {
    display: inline-block;
    text-decoration: none;
}

img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* general */
html {
    scroll-behavior: smooth;
    font-size: 10px;
}

body {
    position: relative;
    width: 100%;
    -webkit-text-size-adjust: 100%;
    font-family: 'Noto Sans JP', 'NotoSans', sans-serif;
}

body>iframe,
body>img {
    display: none;
}

.wrap {
    position: relative;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
}

.flexBetween {
    display: flex;
    justify-content: space-between;
}

.header {
    padding: 7px 0 11px;
}

.header a {
    max-width: 245px;
}

.keyVisual {
    background: #003894;
    padding: 33px 0 61px;
    margin-bottom: 100px;
}

.keyVisual .txt01 {
    color: #fff;
    font-size: 28px;
    text-align: center;
    margin: 0 auto;
    background: url('../img/line_01.png') center bottom no-repeat;
    background-size: 21.535em auto;
    line-height: 1.2;
    font-weight: bold;
    margin-bottom: 15px;
}

.keyVisual .txt01 .txtL {
    font-size: 1.5em;
}

.keyVisual .txt01 .txtYellow {
    color: #fff000;
}

.keyVisualInner {
    background: #fff000 url('../img/bg_book.png') 71% 66% no-repeat;
    background-size: 82.9em 31.7em;
    border-radius: 150px 150px 25px 25px;
    padding: 22px 0 33px;
    position: relative;
    margin: 0 4em;
}

.keyVisual .badge {
    position: absolute;
    z-index: 1;
    top: 94px;
    right: -13px;
    max-width: 150px;
}

.keyVisual .txt02 {
    font-size: 30px;
    text-align: center;
    margin: 0 auto;
    line-height: 1.3;
    font-weight: bold;
}

.keyVisual h1 {
    color: #003894;
    font-weight: bold;
    text-align: center;
    font-size: 108px;
    margin-bottom: 23px;
}

.keyVisual h1 .headingS {
    font-size: 84px;
}

@media screen and (min-width: 751px) {
    .keyVisual .wrap {
        max-width: 98em;
    }
}

.cv {
    text-align: center;
}

.cvBox {
    border: 4px solid #003894;
    border-radius: 20px;
    max-width: 74em;
    margin: 0 auto 33px;
    padding-bottom: 12px;
    position: relative;
}

.cvBox::after {
    content: '';
    background: url(../img/cv_arrow.png) center bottom no-repeat;
    height: 30px;
    width: 37px;
    position: absolute;
    bottom: -30px;
    left: calc(50% - 18.5px);
}

.cvBoxInner {
    display: flex;
    justify-content: space-between;
    max-width: 57.5em;
    margin: 0 auto;
    padding-top: 10px;
}

.cvBox h2 {
    color: #003894;
    font-size: 30px;
    font-weight: bold;
    border-radius: 20px 20px 0 0;
    padding: 11px 0;
    background: #fff000;
}

.cvBox h2 .txtRed {
    color: #e00000;
}

.cvBox p {
    color: #003894;
    font-weight: bold;
    font-size: 24px;
    align-content: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cvBox .cvTxt02 {
    font-size: 28px;
}

.cvBox .percent {
    margin-top: 8px;
    height: 127px;
    line-height: 1.1;
}

.btn {
    background: url('../img/bg_btn.png') center center no-repeat;
    background-size: cover;
    box-shadow: 0 8px 0 #b50909;
    max-width: 600px;
    height: 109px;
    color: #fff;
    border-radius: 57.5px;
    font-size: 35px;
    text-align: center;
    line-height: 1.2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 40px 0 8px;
    box-sizing: border-box;
    margin: 0 auto;
    cursor: pointer;
    font-weight: 500;
}

.btn .txtShadow {
    text-shadow: 1.5px 2.598px 1.7px rgba(168, 42, 42, 0.24);
}

.btn .txtS {
    font-size: 30px;
}

.btn .circle {
    font-size: 32px;
    background: #fff000;
    border-radius: 100%;
    height: 98px;
    width: 98px;
    text-align: center;
    align-content: center;
    color: #e00000;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
}

.btn::after {
    content: '';
    background: url('../img/arrow_01.png') center center no-repeat;
    background-size: contain;
    width: 17px;
    height: 33px;
}

.cv .cvTxt03 {
    font-size: 22px;
    margin-top: 26px;
    line-height: 1.4;
}

.cv .cvTxt04 {
    background: #e1e1e1;
    max-width: 543px;
    height: 45px;
    margin: 6px auto 0;
    align-content: center;
    font-size: 33.6px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cv .cvTxt05 {
    margin-top: 6px;
    line-height: 1.4;
    font-size: 22px;
    color: #e00000;
}

.cvImg {
    max-width: 543px;
    margin: 90px auto 0;
    align-content: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.organize h2 {
    text-align: center;
    font-weight: bold;
    line-height: 1.2;
    margin: 89px 0 0;
    font-size: 32px;
}

.organize h2>img {
    margin-bottom: 37px;
}

.organize h2 .txtL {
    font-size: 40px;
    color: #003894;
}

.organizeList {
    max-width: 660px;
    padding-right: 32px;
    margin: 0 auto;
}

.organizeList>li figure {
    height: 252px;
}

.organizeList p {
    font-size: 30px;
    font-weight: 900;
    text-align: center;
    color: #003894;
    margin-top: -28px;
    padding-right: 30px;
    text-shadow: -3px -3px 0 #fff, 0 -3px 0 #fff, 3px -3px 0 #fff, 3px 0 0 #fff,
                3px 3px 0 #fff, 0 3px 0 #fff, -3px 3px 0 #fff, -3px 0 0 #fff;
}

.organizeList p .txtRed {
    color: #e00000;
}

.commonBox {
    border: 4px solid #003894;
    border-radius: 20px;
    max-width: 740px;
    margin: 102px auto 58px;
}

.commonBox h3 {
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    color: #003894;
    margin-top: -15px;
}

.commonBox h3 .txtBg {
    padding: 0 20px;
    background: #fff;
}

.commonBox ul {
    max-width: 46.2em;
    padding: 8px 0 17px;
    margin: 0 auto;
}

.commonBox ul>li {
    font-size: 24px;
    line-height: 1.333;
}

.commonBox ul>li .bulletPoint {
    color: #003894;
}

.commonBox ul>li .modalBtn {
    position: relative;
    bottom: -3px;
    left: 3px;
    display: inline-block;
    cursor: pointer;
}

.commonTxt {
    font-size: 32px;
    font-weight: bold;
    text-align: center;
}

.commonTxt.itemsCenter {
    display: flex;
    align-items: center;
    justify-content: center;
}

.commonHighlight {
    font-size: 40px;
    color: #003894;
    font-weight: bold;
    text-align: center;
}

.goods {
    background: #e1e1e1;
    margin: 52px 0 65px;
}

.goodList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 40px 5px 18px;
}

.goodList>li {
    display: flex;
    width: calc(50% - 10px);
    background: #fff;
    padding: 20px 35px;
    border-radius: 20px;
    align-items: center;
    margin-bottom: 25px;
}

.goodList>li:nth-child(2n) {
    margin-left: 20px;
}

.goodList>li picture {
    max-width: 150px;
    width: 100%;
    height: 206px;
}

.goodList>li .txtWrap {
    width: 100%;
    text-align: center;
    margin-left: 20px;
}

.goodList>li h3 {
    font-weight: bold;
    font-size: 30px;
    color: #003894;
}

.goodList>li:nth-child(2) h3 {
    padding-right: 7px;
}

.goodList>li p {
    font-size: 22px;
    margin: 16px 0 25px;
    line-height: 1.2;
}

.goodList>li:nth-child(n+3) p {
    margin: 18px 0 9px;
}

.goodList>li .modalBtn {
    font-size: 24px;
    background: #003894;
    color: #fff;
    border-radius: 2em;
    display: block;
    align-content: center;
    padding: 0.333334em 1.041667em;
    margin: 0 auto;
    border: none;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
}

.commonBox.item02 {
    margin: 74px auto 98px;
}

.commonBox.item02 ul {
    padding: 30px 0 35px;
}

.instruct h2 img {
    margin-bottom: 58px;
}

.instruct h2 {
    margin: 60px 0 58px;
}

.instructList {
    padding: 0 40px;
    margin: 56px 0 0;
}

.instructList>li {
    background: #fff000;
    border-radius: 20px;
    margin-bottom: 30px;
    position: relative;
    padding: 9px 35px 9px 60px;
}

.instructList:first-of-type>li:nth-child(2) {
    padding: 26px 35px 36px 60px;
}

.instructList:first-of-type>li:nth-child(2) h3 .txtS {
    padding-left: 10px;
}

.instructList>li:nth-child(2) h3 {
    margin-bottom: 16px;
}

.instructList:first-of-type>li:nth-child(2) .flexBetween {
    justify-content: left;
}

.instructList:first-of-type>li:nth-child(2) figure {
    max-width: 284px;
}

.instructList:first-of-type>li:nth-child(2) .txtWrap {
    margin: 4px auto 0 10px;
    font-size: 20px;
    max-width: 302px;
    line-height: 1.2;
}

.instructList:first-of-type>li:nth-child(2) .label {
    margin-top: -12px;
}

.instructList>li .txtWrap a {
    font-size: 20px;
    color: #003894;
    text-decoration: underline;
    margin-top: 8px;
    text-underline-offset: 7px;
}

.instructList>.bgBlue {
    background: #e1ecff;
    padding: 18px 54px 12px 60px;
    margin-bottom: 16px;
}

.instructList>.bgBlue:nth-child(2) {
    padding: 14px 54px 16px 60px;
}

.instructList>li .txtNum {
    position: absolute;
    top: -9px;
    left: -18px;
    width: 57px;
}

.instructList>li:first-child .flexBetween {
    align-items: center;
}

.instructList>li .imgSearch {
    max-width: 346px;
    margin-top: 27px;
}

.instructList>li h3 {
    font-size: 34px;
    font-weight: bold;
    display: flex;
    align-items: center;
    text-wrap: nowrap;
}

.instructList>li h3 .txtS {
    font-size: 22px;
    font-weight: bold;
    text-wrap: wrap;
}

.instructList>li .label {
    font-size: 28px;
    font-weight: bold;
    color: #003894;
    height: 5.75em;
    width: 5.75em;
    border-radius: 100%;
    background: #fff;
    text-align: center;
    align-content: center;
    line-height: 1.2;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.instructList>.bgBlue h3 {
    font-size: 36px;
    margin-top: 2px;
}

.instructList>.bgBlue h3 .txtS {
    font-size: 24px;
}

.instructList>.bgBlue .txt02 {
    font-size: 22px;
    line-height: 1.333;
    margin-top: 17px;
}

.instructList>.bgBlue .label {
    height: 5.36em;
    width: 5.36em;
    padding-bottom: 1.5px;
}

.instructList>li .flexBetween.itemsCenter {
    align-items: center;
}

.instruct .arrow02 {
    max-width: 63px;
    margin: 39px auto 58px;
}

.instruct {
    margin-bottom: 99px;
}

.reason {
    margin: 91px 0 0;
}

.reasonList {
    margin: 60px 0 38px;
}

.reasonList>li {
    border: 4px solid #003894;
    border-radius: 20px;
    padding: 20px 23px 15px;
    width: 100%;
}

.reasonList>li:nth-child(2) {
    margin: 0 10px;
}

.reasonList>li .label {
    max-width: 217px;
    margin: 0 auto;
}

.reasonList>li h3 {
    font-size: 30px;
    color: #003894;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
    margin: 20px 0 22px;
}

.reasonList>li ul>li {
    font-size: 20px;
    line-height: 1.4;
    position: relative;
    padding-left: 5px;
    margin-bottom: 12px;
}

.reasonList>li ul>li::before {
    content: "\2022";
    font-weight: bold;
    font-size: 20px;
    position: absolute;
    left: -8px;
    top: 0;
}

.reason .line {
    max-width: 151px;
    margin: 0 auto 40px;
}

.reason .bgYellow {
    background: #fffdee;
}

.reasonBottom {
    max-width: 650px;
    margin: 0 auto;
    padding: 56px 0 38px;
}

.reasonBottom h3 {
    font-size: 26px;
    font-weight: bold;
    color: #00a08e;
    text-align: center;
    line-height: 1.2;
    margin-bottom: 32px;
}

.reasonBottom h3:last-of-type {
    margin-bottom: 32px;
    margin-top: 32px;
}

.reasonBottom ul>li img {
    height: auto;
}

.reasonBottom ul>li p {
    font-size: 20px;
    text-align: center;
    margin-top: 10px;
    line-height: 1.2;
}

@media screen and (min-width: 751px) {
    .reasonBottom ul>li:first-child {
        width: calc(323 / 650 * 100%);
    }

    .reasonBottom ul>li:last-child {
        width: calc(319 / 650 * 100%);
    }
}

.customer {
    padding-top: 98px;
}

.customerList {
    padding: 49px 40px 46px;
}

.customerList>li {
    background: #fff url('../img/customer_quote_01_01.png') left bottom/148px 197px no-repeat;
    max-width: 660px;
    z-index: -2;
    position: relative;
}

.customerList>li:nth-child(2n) {
    background: #fff url('../img/customer_quote_02_01.png') right bottom/146px 213px no-repeat;
    max-width: 656px;
    margin: -5px 0 46px auto;
}

.customerList>li p {
    font-size: 22px;
    color: #003894;
}

.customerList>li p .txtBold {
    font-weight: bold;
}

.customerList>li p.note {
    font-size: 16px;
    text-align: right;
}

.customerList>li .txtWrap {
    position: relative;
    max-width: 420px;
    margin-left: auto;
    margin-right: 0;
    padding: 30px 35px 58.6px 57px;
    box-sizing: content-box;
    line-height: 1.2;
    background: url('../img/customer_quote_01_02.png') right top/512px 40px no-repeat,url('../img/customer_quote_01_04.png') right bottom/512px 86px no-repeat;
}

.customerList>li .txtWrap::after {
    content: '';
    width: 512px;
    height: 58%;
    background: url('../img/customer_quote_01_03.png') right top/512px auto no-repeat;
    position: absolute;
    top: 36px;
    right: 0;
    z-index: -1;
}

.customerList>li:nth-child(2n) .txtWrap {
    max-width: 415px;
    margin-left: 0;
    margin-right: auto;
    padding: 35px 65px 43.2px 30px;
    box-sizing: content-box;
    line-height: 1.2;
    background: url('../img/customer_quote_02_02.png') left top/510px 40px no-repeat,url('../img/customer_quote_02_04.png') left bottom/510px 110px no-repeat;
}

.customerList>li:nth-child(2n) .txtWrap::after {
    width: 510px;
    background: url('../img/customer_quote_02_03.png') left top/510px auto no-repeat;
    left: 0;
    right: auto;
}

.customerList>li:last-child .note {
    margin-top: 10px;
}

.customerList>li:first-child .note {
    margin-top: 10px;
}

.faq {
    padding: 89px 0 101px;
}

.faq h2 {
    max-width: 296px;
    margin: 0 auto 33px;
    padding-right: 66px;
    box-sizing: content-box;
}

.faqList {
    padding: 0 40px;
}

.faqList>li {
    border: 2px solid #003894;
    color: #003894;
    margin-top: 15px;
}

.faqList>li h3 {
    background: #e1ecff;
    font-size: 28px;
    padding: 10px 100px 10px 50px;
    min-height: 88px;
    position: relative;
    line-height: 1.2;
    cursor: pointer;
    align-content: center;
    display: flex;
    align-items: center;
}

.faqList>li h3::after {
    width: 24px;
    height: 14px;
    content: '';
    background: url('../img/arrow_03.png') center center no-repeat;
    position: absolute;
    top: calc(50% - 7px);
    right: 55px;
}

.faqList>li h3.active::after {
    transform: rotate(180deg);
}

.faqList>li .txtWrap {
    font-size: 22px;
    padding: 30px 50px;
}

.faqList>li .txtWrap p:first-child {
    margin-top: 0;
}

.faqList>li .txtWrap p {
    margin-top: 27px;
    line-height: 1.5;
}

.faqList>li .txtWrap a {
    color: #003894;
    text-decoration: underline;
    font-weight: bold;
    text-underline-offset: 7px;
}

.contact {
    background: #f6f6f6;
    color: #003894;
    text-align: center;
    padding: 60px 0 49px;
}

.contactBox {
    background: #fff;
    border: 4px solid #003894;
    border-radius: 20px;
    max-width: 70em;
    margin: 39px auto 36px;
    padding: 25px 0 30px;
}

.contactBox h3 {
    font-size: 30px;
    font-weight: bold;
    background: #fff000;
    border-radius: 22.5px;
    padding: 7.5px 22.5px;
    height: 45px;
    align-content: center;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: max-content;
    margin: 0 auto;
}

.contactBox a {
    font-size: 86px;
    font-weight: bold;
    color: #003894;
    margin: 5px 0 15px;
}

.contactBox p {
    font-weight: bold;
    font-size: 30px;
}

.contactBox p .label {
    color: #fff;
    font-size: 24px;
    background: #003894;
    padding: 5px 20px;
    font-weight: normal;
}

.contact .note {
    font-size: 30px;
}

.contact .note a {
    color: #003894;
    font-weight: bold;
    text-decoration: underline;
    text-underline-offset: 7px;
}

.footer {
    background: #003894;
    text-align: center;
    padding: 63px 0 31px;
}

.footer p {
    color: #fff;
    font-size: 12px;
    line-height: 1.667;
}

.modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, .4);
    align-items: center;
    padding: 30px 0;
}

.modalContent {
    margin: auto;
    width: 980px;
    border-radius: 20px;
    background: #fff;
    box-shadow: 3.774px 3.28px 15px 0px rgba(181, 181, 181, 0.004);
    overflow: hidden;
}

.modalContent .ttl {
    background: #003894;
    font-size: 30px;
    color: #fff;
    text-align: center;
    padding: 21px 0;
    position: relative;
}

.modalContent .row {
    width: 50%;
    text-align: center;
    padding: 33px 0;
}

/* .modalContent .row.bgGray {
    width: 55%;
} */

.modalContent .row figure {
    height: 235px;
    max-width: 415px;
    margin: 15px auto 10px;
}

.modalContent .row.bgGray {
    background: #ececec;
}

.modalContent .subTtl {
    font-size: 30px;
    font-weight: bold;
    color: #e00000;
    display: inline-block;
    background: url('../img/good_modal_o.png') center left no-repeat;
    padding: 20px 0 20px 60px;
}

.modalContent ul {
    display: inline-block;
    margin: 30px 0;
}

.modalContent ul>li {
    font-size: 24px;
    font-weight: bold;
    color: #003894;
    margin-bottom: 10px;
    position: relative;
    text-align: left;
    padding-left: 12px;
    left: 10px;
}

.modalContent ul>li::before {
    content: "\2022";
    font-weight: bold;
    font-size: 20px;
    position: absolute;
    left: -5px;
    top: 0;
}

.modalContent .row.bgGray .subTtl {
    color: #000;
    display: inline-block;
    background: url('../img/good_modal_x.png') center left no-repeat;
}


.modalContent .row.bgGray ul {
    margin: 45px;
}

.modalContent .row.bgGray ul>li {
    line-height: 1.2;
    font-weight: normal;
    color: #000;
    margin-bottom: 10px;
    left: 0;
}

.modalContent ul>li .txtRed {
    color: #e00000;
}

.modalContent .close {
    position: absolute;
    max-width: 50px;
    top: calc(50% - 25px);
    right: 10px;
    cursor: pointer;
}

.modalContent .row figure.imgWrap {
    max-width: 323px;
    margin: 0 auto;
}

.modalContent .imgCap {
    font-size: 24px;
    margin: 20px 0 50px;
}

.modalContentCv {
    max-width: 580px;
    margin: auto;
    background: #fff;
    box-shadow: 3.774px 3.28px 15px 0px rgba(181, 181, 181, 0.004);
    overflow: hidden;
    text-align: center;
    padding: 40px 0;
}

.modalContentCv a {
    color: #fff;
    background: #e00000;
    font-size: 30px;
    max-width: 450px;
    width: 100%;
    border-radius: 40px;
    min-height: 80px;
    align-content: center;
    text-align: center;
    margin: 10px auto;
    padding: 25px 0;
    box-sizing: border-box;
}

.modalContentCv a.bgBlue {
    background: #003894;
}

#modal05 .modalContent .ttl {
    padding: 25px 0;
}

#modal05 .modalContent .row {
    padding: 66px 0 55px;
}

#modal05 .modalContent .subTtl {
    padding: 20px 0 20px 70px;
    position: relative;
    left: -15px;
}


.slick-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    list-style-type: none;
    gap: 10px;
    margin-top: 20px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.slick-dots li button {
    display: block;
    padding: 0;
    border: none;
    border-radius: 50%;
    width: 17px;
    height: 17px;
    background-color: #e1e1e1;
    text-indent: -9999px;
    cursor: pointer;
}

.slick-dots li.slick-active button {
    background-color: #003894;
}

.pc {
    display: block;
}
.btn.pc {
    display: flex;
}
.sp {
    display: none;
}

@media only screen and (max-width: 1024px) {
    .keyVisual .badge {
        right: 15px;
    }
}

@media screen and (min-width: 751px) and (max-width: 980px) {
    .goodList {
        padding: 40px 2.663vw 18px;
    }

    .goodList>li figure,
    .goodList>li picture {
        max-width: 13.316vw;
        width: 100%;
        height: auto;
    }

    .goodList>li h3 {
        font-size: 3.329vw;
    }

    .goodList>li p {
        font-size: 2.264vw;
    }

    .goodList>li .modalBtn {
        font-size: 2.397vw;
    }

    .goodList>li:nth-child(2n) {
        margin-left: 2.663vw;
    }

    .goodList>li {
        padding: 2.663vw;
        margin-bottom: 2.663vw;
        width: calc(50% - 1.332vw);
    }

    .goodList>li .txtWrap {
        margin-left: 1.332vw;
    }

    /* .keyVisual========================================================= */
    .keyVisualInner {
        background: #fff000 url(../img/bg_book.png) 65% center no-repeat;
        background-size: 90%;
    }
    
    .keyVisual .badge {
        max-width: 120px;
    }
    
    .keyVisual .txt02 {
        font-size: 24px;
    }
    
    .keyVisual h1 {
        font-size: 84px;
    }
    
    .keyVisual h1 .headingS {
        font-size: 68px;
    }

    .modalContent .row.bgGray .subTtl {
        padding: 20px 0 20px 40px;
    }

    #modal05 .modalContent .subTtl {
        padding: 20px 0 20px 50px;
        left: 0;
    }
}

@media screen and (min-width: 768px) {
    a[href*="tel:"] {
        pointer-events: none;
    }
}

@media screen and (max-width: 750px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }

    .wrap {
        padding: 0 2.667vw;
    }

    .header {
        padding: 3.733vw 0 3.067vw;
    }

    .header a {
        max-width: 46.533vw;
    }

    .keyVisual {
        background: #003894;
        padding: 2.8vw 0;
        margin-bottom: 8vw;
    }

    .keyVisual .wrap {
        padding: 0;
    }

    .keyVisual .txt01 {
        font-size: 4vw;
        background: url('../img/line_01_sp.png') center bottom no-repeat;
        background-size: 21em;
        padding: 0 2.5em 0.7em;
        margin-bottom: 0;
    }

    .keyVisualInner {
        background: #fff000 url('../img/bg_book_sp.png') center 93% no-repeat;
        background-size: 88.4vw;
        border-radius: 24vw 24vw 5.333vw 5.333vw;
        margin: 0;
        padding: 0 0 35.733vw;
        margin: 0 2.6667vw;
    }

    .keyVisual .badge {
        max-width: 22.267vw;
        top: 6em;
        right: 0.35em;
    }

    .keyVisual .txt02 {
        font-size: 3.733vw;
        line-height: 1.2;
    }

    .keyVisual .txt02 .sp {
        display: inline-block;
    }

    .keyVisual h1 {
        font-size: 13.867vw;
        margin-bottom: -1.6vw;
        position: relative;
        top: -2vw;
        line-height: 1;
    }

    .keyVisual h1 .headingS {
        font-size: 8.8vw;
    }

    .cvBox {
        border-radius: 2.667vw;
        margin: 0 auto 5.333vw;
        padding-bottom: 1.333vw;
        border: 0.53333333vw solid #003894;
        max-width: 29em;
    }

    .cvBoxInner {
        padding: 1.2vw 0 0;
        justify-content: center;
    }

    .cvBoxInner>div:first-child {
        margin-right: 3.2vw;
    }

    .cvBox h2 {
        font-size: 3.84vw;
        border-radius: 2.667vw 2.667vw 0 0;
        padding: 1.2vw 0;
    }

    .cvBox p {
        font-size: 2.88vw;
    }

    .cvBox .cvTxt02 {
        font-size: 3.6vw;
    }

    .cvBox .percent {
        margin-top: 0.8vw;
        height: 15.2vw;
    }

    .cvBox::after {
        background: #fff url(../img/cv_arrow_sp.png) center bottom no-repeat;
        height: 3.2vw;
        width: 4.533vw;
        background-size: 100%;
        bottom: -3.2vw;
        left: calc(50% - 2.267vw);
    }

    .btn {
        height: 20vw;
        border-radius: 10vw;
        font-size: 5.867vw;
        padding: 0 8vw 0 2vw;
        margin: 0 4vw;
        box-shadow: 0 1.067vw 0 #b50909;
        max-width: unset;
    }

    .btn.modalBtn {
        padding: 0 0.75em 0 0.34em;
        border-radius: 1.7em;
        margin: 0 auto;
        max-width: 14.78em;
    }

    .btn.pc {
        display: none;
    }
    .btn.sp {
        display: flex;
    }

    .btn .txtS {
        font-size: 5.067vw;
    }

    .btn .circle {
        font-size: 4.8vw;
        height: 14.933vw;
        width: 14.933vw;

    }

    .btn::after {
        width: 2.933vw;
        height: 5.6vw;
        background-size: 2.933vw;
    }

    .cv .cvTxt03 {
        font-size: 3.467vw;
        margin-top: 5.2vw;
    }

    .cv .cvTxt04 {
        height: 7.467vw;
        margin: 0.933vw 4vw 0;
        font-size: 5.6vw;
        max-width: unset;
    }

    .cv .cvTxt05 {
        margin-top: 1.6vw;
        font-size: 3.467vw;
    }

    .cvImg {
        margin: 11.733vw 4vw 0;
    }

    .organize h2 {
        margin: 12vw 0 0;
        font-size: 5.6vw;
    }

    .organize h2 .commonTxt.itemsCenter {
        flex-direction: row;
    }

    .organize h2 .txtL {
        font-size: 6.667vw;
    }

    .organize h2>img {
        margin-bottom: 7.467vw;
    }

    .organizeList {
        max-width: unset;
        padding-right: 0;
        margin: 0 6.4vw 0 8.667vw;
    }

    .organizeList>li figure {
        height: 33.733vw;
    }

    .organizeList p {
        font-size: 5.333vw;
        margin-top: -4.4vw;
        padding-right: 4vw;
        text-shadow: -0.4vw -0.4vw 0 #fff, 0 -0.4vw 0 #fff, 0.4vw -0.4vw 0 #fff, 0.4vw 0 0 #fff,
                    0.4vw 0.4vw 0 #fff, 0 0.4vw 0 #fff, -0.4vw 0.4vw 0 #fff, -0.4vw 0 0 #fff;
    }

    .commonBox {
        border: 0.53333333vw solid #003894;
        border-radius: 2.667vw;
        margin: 6.667vw 4vw 7.733vw;
        text-align: center;
    }

    .commonBox.item02 {
        margin: 9.2vw 4vw 0;
        text-align: center;
    }

    .commonBox h3 {
        font-size: 5.333vw;
        margin-top: -2.4vw;
    }

    .commonBox h3 .txtBg {
        padding: 0;
    }

    .commonBox ul {
        max-width: unset;
        padding: 2.4vw 2vw 2.8vw 3.2vw;
        margin: 0 auto;
        display: inline-block;
        text-align: left;
    }

    .commonBox ul>li {
        line-height: 1.45;
        font-size: 4vw;
    }

    .commonBox ul>li .modalBtn {
        display: inline-flex;
        max-width: 4.267vw;
        bottom: -0.267vw;
        left: 0.8vw;
    }

    .commonTxt {
        font-size: 5.6vw;
    }

    .commonTxt.itemsCenter {
        flex-direction: column;
    }

    .commonTxt.itemsCenter .commonHighlight {
        margin-top: 1.6vw;
    }

    .commonHighlight {
        font-size: 6.667vw;
    }

    .commonBox.item02 ul {
        display: inline-block;
        text-align: left;
        padding: 4vw 0
    }

    .instruct h2 {
        margin: 12.267vw 0 7.733vw;
    }

    .instruct h2 img {
        margin-bottom: 6.8vw;
    }

    .instructList {
        padding: 0;
        margin: 5.333vw 0 0;
    }

    .instructList>li {
        border-radius: 2.667vw;
        margin-bottom: 4vw;
        padding: 4vw 4vw 1.2vw 4vw;
    }

    .instructList>li h3 {
        font-size: 5.6vw;
        align-items: start;
        flex-direction: column;
        padding-left: 8.667vw;
    }

    .instructList>li h3 .txtS {
        font-size: 3.733vw;
        margin-left: -8.667vw;
        margin-top: 2.267vw;
    }

    .instructList>li .label {
        font-size: 4vw;
        height: 5.6em;
        width: 5.6em;
    }

    .instructList:first-of-type>li:first-child .label {
        position: relative;
        top: -1.333vw;
        right: 0.2em;
    }
    
    .instructList:first-of-type>li:nth-child(2) {
        padding: 4.4vw 4vw 6.8vw;
    }

    .instructList:first-of-type>li:nth-child(2) h3 {
        margin-bottom: 3.467vw;
    }

    .instructList:first-of-type>li:nth-child(2) h3 .txtS {
        padding-left: 0;
    }

    .instructList:first-of-type>li:nth-child(1) .imgSearch {
        max-width: 49.2vw;
        margin-top: 3.6vw;
    }

    .instructList:first-of-type>li:nth-child(2) figure {
        order: 1;
        max-width: 220px;
    }

    .instructList:first-of-type>li:nth-child(2) .txtWrap {
        order: 3;
        max-width: 100%;
        margin: 3.6vw 0 0;
        font-size: 3.467vw;
        line-height: 1.3;
    }

    .instructList>li .txtWrap a {
        font-size: 3.467vw;
        margin-top: 1.2vw;
        text-underline-offset: 7px;
    }

    .instructList:first-of-type>li:nth-child(2) .label {
        order: 2;
        margin-top: 0;
    }

    .instructList:first-of-type>li:nth-child(2) .flexBetween {
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .instruct .arrow02 {
        max-width: 8.267vw;
        margin: 7.6vw auto 7.6vw;
    }

    .instructList>.bgBlue {
        padding: 3.067vw 4vw 3.733vw;
        margin-bottom: 2.533vw;
    }

    .instructList>.bgBlue:nth-child(2) {
        padding: 4.267vw 4vw 4vw;
    }

    .instructList>.bgBlue h3 {
        font-size: 6.2vw;
        margin-top: 1vw;
        padding-left: 0;
    }

    .instructList>.bgBlue h3 .txtS {
        font-size: 4vw;
        margin-left: 0;
    }

    .instructList>.bgBlue .txt02 {
        font-size: 3.2vw;
        margin-top: 2vw;
    }

    .instructList>.bgBlue .label {
        height: 5.6em;
        width: 5.6em;
        padding-bottom: 0;
    }

    .instructList>li .txtNum {
        top: -3.067vw;
        left: -1.733vw;
        width: 12.8vw;
    }

    .instruct {
        margin-bottom: 13.2vw;
    }

    .reason {
        margin: 11.733vw 0 0;
    }

    .reasonList {
        margin: 8vw 0 4vw;
        flex-direction: column;
    }

    .reasonList>li:nth-child(2) {
        margin: 2.6667vw 0;
    }

    .reason .line {
        max-width: 25.067vw;
        margin: 6vw auto 5.067vw;
    }

    .reasonList>li {
        border: 0.53333333vw solid #003894;
        border-radius: 2.667vw;
        padding: 2.533vw 4vw 4.4vw;
    }

    .reasonList>li .label {
        max-width: 36.133vw;
    }

    .reasonList>li h3 {
        font-size: 5.6vw;
        margin: 2vw 0 1.2vw;
    }

    .reasonList>li ul>li {
        font-size: 3.733vw;
        padding-left: 1vw;
        margin-bottom: 0;
    }
    
    .reasonList>li ul>li::before {
        font-size: 3.2vw;
        left: -.8vw;
    }

    .reasonBottom {
        max-width: unset;
        margin: 0 auto;
        padding: 8.8vw 4vw 4.533vw;
    }

    .reasonBottom h3 {
        font-size: 4.533vw;
        margin-bottom: 4vw;
    }

    .reasonBottom h3:last-of-type {
        margin-top: 8vw;
        margin-bottom: 4vw;
    }

    .reasonBottom ul>li:last-child {
        margin-left: 2vw;
    }

    .reasonBottom ul>li p {
        font-size: 2.667vw;
        margin-top: 2vw;
    }

    .customerList {
        padding: 6.533vw 0 0;
    }

    .customerList>li .txtWrap {
        max-width: 52vw;
        padding: 0.91em 4vw 1.66em 10vw;
        line-height: 1.4;
        background: url('../img/customer_quote_01_02_sp.png') right top/66vw 2em no-repeat,url('../img/customer_quote_01_04_sp.png') right bottom/66vw 4.2em no-repeat;
    }

    .customerList>li .txtWrap::after {
        content: '';
        width: 66vw;
        height: 66%;
        background: url('../img/customer_quote_01_03_sp.png') top center/100% auto repeat-y;
        position: absolute;
        top: 1.8em;
        z-index: -1;
    }

    .customerList>li p {
        font-size: 3.2vw;
    }

    .customerList>li p.note {
        font-size: 2.4vw;
        margin-top: 1.467vw;
    }
    
    .customerList>li:first-child .note {
        margin-top: 1.467vw;
    }

    .customerList>li {
        background: #fff url('../img/customer_quote_01_01_sp.png') left bottom/26.667vw 29.6vw no-repeat;
        max-width: unset;
        margin-right: 2vw;
        height: auto;
        display: flex;
        align-items: center;
    }

    .customerList>li:nth-child(2n) {
        background: #fff url('../img/customer_quote_02_01_sp.png') right bottom/26.4vw 29.733vw no-repeat;
        margin: 7.6vw 0 13.067vw;
        height: auto;
        max-width: unset;
    }

    .customerList>li:nth-child(2n) .txtWrap {
        max-width: 53vw;
        padding: 0.81em 12.4vw 1.61em 3.2vw;
        line-height: 1.4;
        background: url('../img/customer_quote_02_02_sp.png') left top/68.4vw 2em no-repeat,url('../img/customer_quote_02_04_sp.png') left bottom/68.4vw 5.55em no-repeat;
    }

    .customerList>li:nth-child(2n) .txtWrap::after {
        width: 68.4vw;
        background: url('../img/customer_quote_02_03_sp.png') top center/100% auto repeat-y;
    }


    .customerList>li:last-child .note {
        margin-top: 1.467vw;
    }

    .customer {
        padding-top: 10.133vw;
    }

    .faq h2 {
        max-width: 50.133vw;
        margin: 0 auto 8vw;
        padding-right: 8.8vw;
    }
    
    .faqList>li {
        border: 0.53333333vw solid #003894;
        margin-top: 2.133vw;
    }

    .faqList>li h3 {
        background: #e1ecff;
        font-size: 4vw;
        padding: 2vw 8vw 2vw 4vw;
        min-height: 14.4vw;
    }

    .faqList>li h3::after {
        width: 3.2vw;
        height: 1.867vw;
        top: calc(50% - 0.933vw);
        right: 4.267vw;
        background-size: 100%;
    }

    .faqList>li .txtWrap {
        font-size: 3.467vw;
        padding: 4vw 4vw;
    }

    .faqList>li .txtWrap p {
        margin-top: 4vw;
    }

    .faqList>li .txtWrap a {
        text-underline-offset: 0.8vw;
    }

    .faq {
        padding: 10.8vw 0 12.533vw;
    }

    .contact {
        padding: 8.4vw 0 14.267vw;
    }

    .contact h2.commonHighlight {
        font-size: 5.067vw;
        line-height: 1.5;
    }

    .contactBox {
        border: 0.53333333vw solid #003894;
        border-radius: 2.667vw;
        max-width: 32.6em;
        margin: 5.467vw auto 2.533vw;
        padding: 5.2vw 0 6.133vw;
    }

    .contactBox h3 {
        font-size: 4vw;
        border-radius: 3vw;
        padding: 1vw 2.267vw;
        height: 6vw;
    }

    .contactBox a {
        font-size: 10.467vw;
        margin: 1.333vw 0 2vw;
    }

    .contactBox p .label {
        font-size: 3.2vw;
        padding: 0.667vw 2.8vw;
        margin-right: 1.6vw;
    }

    .contactBox p {
        font-size: 4vw;
    }

    .contact .note {
        font-size: 4vw;
        line-height: 1.5;
    }

    .footer p {
        font-size: 2.667vw;
        line-height: 1.3;
    }

    .footer {
        background: #003894;
        text-align: center;
        padding: 5.6vw 0 6.4vw;
    }

    .modalContentCv {
        max-width: 86.667vw;
        padding: 5.2vw 6vw;
    }

    .modalContentCv a {
        font-size: 4.8vw;
        max-width: unset;
        border-radius: 6.667vw;
        min-height: 13.333vw;
        margin: 2.4vw auto;
        padding: 4.267vw 0;
    }
    
    .goods {
        margin-top: 4.3333333333vw;
        margin-bottom: 14.4vw;
    }

    .goods .wrap {
        padding: 0;
    }

    .goods .slick-dots {
        bottom: calc(6.9333333333vw * -1);
        gap: 3.2vw;
    }

    .goods .slick-dots li button {
        width: 4vw;
        height: 4vw;
    }

    .goodList .slick-slide {
        width: 48vw;
        margin-left: 2.1333333333vw;
        margin-right: 2.1333333333vw;
        background-color: #fff;
        border-radius: 2.6666666667vw;
        padding-top: 2.9333333333vw;
        padding-bottom: 2.9333333333vw;
    }

    .goodList {
        text-align: center;
        padding: 2.6666666667vw 0;
    }

    .goodList .title {
        color: #003894;
        font-weight: bold;
        font-size: 5.6vw;
        margin-bottom: 1.6vw;
    }

    .goodList .text {
        line-height: 1.2;
        font-size: 2.9333333333vw;
        margin: calc(1.3333333333vw * -1) 0 1.6vw;
    }

    .goodList .text.text-edit {
        margin: 0;
        transform: translateY(calc(1.3333333333vw * -1));
    }

    .goodList .modalBtn {
        display: block;
        color: #ffffff;
        font-size: 3.7333333333vw;
        background-color: #003894;
        border-radius: 3.2vw;
        padding: 1.3333333333vw 0;
        width: 38.6666666667vw;
        margin: 0.2666666667vw auto 0;
    }

    .goodList figure,
    .goodList picture {
        margin: 0 auto;
        min-height: 27.7333333333vw;
    }

    .goodList figure.item-1,
    .goodList picture.item-1 {
        width: 14.2666666667vw;
    }

    .goodList figure.item-2,
    .goodList picture.item-2 {
        width: 24vw;
        transform: translateY(calc(1.0666666667vw * -1));
    }

    .goodList figure.item-3,
    .goodList picture.item-3 {
        width: 17.2vw;
    }

    .goodList figure.item-4,
    .goodList picture.item-4 {
        width: 31.4666666667vw;
    }

    .modal .modalContent {
        max-width: 86.6666666667vw;
        border-radius: 2.6666666667vw;
    }

    .modal .modalContent .ttl {
        font-size: 5.3333333333vw;
        padding: 4vw 0;
    }

    #modal05 .modalContent .ttl {
        padding: 4vw 0;
    }
    
    .modal .modalContent .close {
        max-width: 8vw;
        top: calc(50% - 4vw);
        right: 3.2vw;
    }

    .modal .flexBetween {
        flex-direction: column;
    }

    .modal .modalContent .subTtl {
        font-size: 4.8vw;
        transform: translateX(3.7333333333vw);
        padding: 2.6666666667vw 10.6666666667vw;
        background: none;
        position: relative;
    }

    .modal .modalContent .subTtl::after {
        content: "";
        border: 1.0666666667vw solid #e00000;
        border-radius: 50%;
        position: absolute;
        width: 5.3333333333vw;
        height: 5.3333333333vw;
        top: 1.3333333333vw;
        left: 0.8vw;
    }

    .modal .modalContent .row.bgGray .subTtl {
        background-size: 6.2666666667vw 6.1333333333vw;
        background-position-x: 2.6666666667vw;
        transform: translateX(2.8vw);
    }

    .modal .modalContent .row.bgGray .subTtl::after {
        content: none;
    }

    .modal .modalContent .row {
        width: 100%;
        padding-top: 2.6666666667vw;
        padding-bottom: 2.9333333333vw;
    }

    .modal .modalContent .row figure {
        max-width: unset;
        width: 67.6vw;
        height: auto;
        margin-top: 1.6vw;
        transform: translateX(1.0666666667vw);
    }

    .modal .modalContent ul {
        margin: 1.0666666667vw 0;
    }

    .modal .modalContent ul>li {
        font-size: 4vw;
        padding-left: 0;
        left: 2.6666666667vw;
        margin-bottom: 1.6vw;
    }

    .modal .modalContent ul>li::before {
        font-size: 3.7333333333vw;
        left: calc(3.4666666667vw * -1);
    }

    .modal .modalContent .row.bgGray ul {
        margin: 2.6666666667vw 6.1333333333vw 2.6666666667vw 7.2vw;
        letter-spacing: -0.5px;
    }

    .modal .modalContent .row.bgGray ul>li {
        font-size: 3.4666666667vw;
        margin-bottom: 1.0666666667vw;
    }

    .modalContent .row figure.imgWrap {
        max-width: 47.867vw;
    }

    #modal05 .modalContent .row {
        padding: 4vw 0 4vw;
    }

    #modal05 .modalContent .subTtl {
        padding: 2.667vw 0 2.667vw 10.8vw;
        position: relative;
        left: -4vw;
    }

    #modal05 .modalContent .imgCap {
        font-size: 3.733vw;
        margin: 4vw 0 2vw;
    }
}

/*# sourceMappingURL=style2.css.map */