@charset "UTF-8";
/*
Theme Name: hset
Version: 1.0.0
*/

/*common*/
/*----------------------------*/
*{ margin:0; padding:0; box-sizing: border-box;}
body{ position: relative; font-family: Arial, Helvetica, 'Noto Sans JP', sans-serif; font-weight: 500; line-height: 1.5; color: #231815; }
img { border: none; width: 100%; height: auto;}
@media screen and (min-width: 1024px) {
a:hover { opacity: 0.75;}
_:-ms-lang(x)::-ms-backdrop, body { font-family: Arial, Helvetica, 'Noto Sans JP', sans-serif;}/*IE対策*/
}
@media screen and (max-width: 767px) {
* { -webkit-text-size-adjust: 100%;}
}
/*----------------------------*/
/*画面サイズ別ルートフォントサイズ*/
/*----------------------------*/
@media screen and (min-width: 1024px){
html{ font-size: 100px;/*変更不可*/}
}
@media screen and (min-width: 768px) and (max-width: 1023px){
html{ font-size: 9.76vw;/*変更不可*/}
}
@media screen and (max-width: 767px){
html{ font-size: 26.67vw;/*変更不可*/}
}
/*----------------------------*/
/*画面サイズ別テキストサイズ*/
/*----------------------------*/
@media screen and (min-width: 768px){
body{ font-size: 0.18rem;}/*PCデザインのテキストサイズの基本：18pxの想定*/
}
@media screen and (max-width: 767px){
body{ font-size: 0.16rem;}/*SPデザインのテキストサイズの基本：16pxの想定*/
}
/*----------------------------*/





/*page*/
/*----------------------------*/
a { color: inherit; text-decoration: none; }
img { vertical-align: middle; max-width: 100%; }
em { font-style: inherit; }
ul, ol { list-style-type: none ;}

.link-area { cursor: pointer; }
.no-scroll { overflow: hidden; }
.clear-float::after { content: ""; display: block; clear: both; }
.iframe-container .iframe-inner { position: relative; padding-top: 56.25%; }
.iframe-container .iframe-inner iframe { position: absolute; left: 0; top: 0; width: 100%; height: 100%; }

.animation-slide-up-fade { transform: translateY(0.3rem); opacity: 0; transition-property: transform, opacity; transition-duration: 0.5s; }
.animation-slide-up-fade.show { transform: translateY(0); opacity: 1; }

.notice-item { display: block; }
.notice-item:not(:last-child) { border-bottom: 1px solid #e8000c; }
.notice-item .item-header { display: flex; align-items: center; gap: 0.1rem; }
.notice-item .item-header .date { font-weight: bold; }
.notice-item .item-header .category { display: inline-block; background: #ffd2d2; }

.blog-item { display: block; background: #fff; }
.blog-item .image { position: relative; }
.blog-item .image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.blog-item .text-header { color: #b9b9b9; }
.blog-item .text-header span { margin-right: 1.0em; }
.blog-item .text-body p  { color: #656565; }

.cases-item { display: block; background: #ffd2d2; }
.cases-item .image { position: relative; }
.cases-item .image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.cases-item .image .category { position: absolute; right: 0; bottom: 0; color: #fff; font-weight: bold; text-align: center; background: #e90c16; }
.cases-item .text h3 { font-weight: 500; }
.cases-item .text a.link { display: block; position: relative; color: #e8000c; text-align: center; border: 0.03rem solid #e8000c; }
.cases-item .text a.link::after { content: ""; display: block; position: absolute; right: 0; top: 0; bottom: 0; width: 0.08rem; height: 0.08rem; margin: auto; border-top: 0.02rem solid #e8000c; border-right: 0.02rem solid #e8000c; transform: rotate(45deg); }

.post-pagination { display: flex; flex-wrap: wrap; justify-content: center; }
.post-pagination .page-numbers { display: flex; justify-content: center; align-items: center; text-align: center; }
.post-pagination .page-numbers.current { color: #fff; background: #e8000c; }

.post-single .box { background: #fff; }
.post-single .box-header .post-attribute .date { color: #b9b9b9; font-weight: bold; }
.post-single .box-header .post-attribute .category { display: inline-block; background: #ffd2d2; }
.post-single .box-header h3 { border-bottom: 0.02rem solid #ea111c; }
.post-single .box-body p { margin-bottom: 1.0em; }
.post-single .box-body .wp-block-button__link { color: #fff; background: #ea111c; border-radius: 0; }

.post-single-navigation { display: flex; justify-content: space-between; gap: 0.1rem; }
.post-single-navigation > * { flex: 1; }
.post-single-navigation .prev-link a { display: inline-block; }
.post-single-navigation .prev-link a::before { content:"◀"; margin-right: 0.5em; }
.post-single-navigation .next-link { text-align: right; }
.post-single-navigation .next-link a { display: inline-block; text-align: left; }
.post-single-navigation .next-link a::after { content:"▶"; margin-left: 0.5em; }
.post-single-navigation .back-link { text-align: center; }
.post-single-navigation .back-link a { display: inline-block; color: #fff; text-align: center; background: #3621d4; }

#page { position: relative; overflow: hidden; }
#page.grey { background: #ececec; }
#overlay { position: fixed; left: 0; top: 0; right: 0; bottom: 0; z-index: 900; background: rgba(0,0,0,0.42); pointer-events: none; opacity: 0; transition: opacity 0.5s; }
#overlay.show { opacity: 1; pointer-events: auto; }
#home-banner { position:fixed; z-index: 100; right: 0; bottom: 0; transform:scale(0.75); }

#footer .footer-cta .box { background: url("./images/footer-cta-bg.png") no-repeat center; background-size: cover; }
#footer .footer-cta h2 { text-align: center; }
#footer .footer-cta .items { max-width: 1160px; margin: auto; }
#footer .footer-cta .items .item { display: flex; justify-content: center; align-items: center; flex-direction: column; color: #e7000c; background: #ffffff; }
#footer .footer-cta .item-mail .mail { position: relative; font-weight: bold; }
#footer .footer-cta .item-mail .mail::before { content: ""; display: block; position: absolute; left: -0.5rem; top: 0; bottom: 0; width: 0.43rem; height: 0.32rem; margin: auto; background: url("./images/footer-cta-icon01.png") no-repeat center; background-size: contain; }
#footer .footer-cta .item-tel .tel { position: relative; font-weight: bold; }
#footer .footer-cta .item-tel .tel::before { content: ""; display: block; position: absolute; left: -0.3rem; top: 0; bottom: 0; width: 0.27rem; height: 0.28rem; margin: auto; background: url("./images/footer-cta-icon02.png") no-repeat center; background-size: contain; }
#footer .footer-copyright { color: #fff; background: #e7000c; }

.page-header { position: relative; background: url("./images/page-header-bg.png") repeat center; }
.page-header::before { content: ""; display: block; position: absolute; left: 0; top: 0; width: 3.05rem; height: 3.05rem; background: #c7000a; clip-path: polygon(0 0, 100% 0, 0 100%); }
.page-header .page-title { position: relative; z-index: 10; }
.page-header .page-title h2 { color: #fff; }

.blog-sec1 { background: #ececec; }

.question-sec1 { background: #ececec; }
.question-sec1 .item { background: #fff; }
.question-sec1 .item h2 { position: relative; }
.question-sec1 .item h2::before { content: "Q"; position: absolute; left: 0; top: 0; display: flex; justify-content: center; align-items: center; color: #fff; background: #3621d4; border-radius: 0.325rem; width: 0.65rem; height: 0.65rem; }
.question-sec1 .item p { position: relative; }
.question-sec1 .item p::before { content: "A"; position: absolute; left: 0; top: 0; display: flex; justify-content: center; align-items: center; color: #fff; background: #e8000c; border-radius: 0.325rem; width: 0.65rem; height: 0.65rem; }

.contact-sec1 { background: #ececec; }
.contact-sec1 .contact-form { background: #fff; }
.contact-sec1 .contact-form h3 { color: #fff; background: #3621d4; }
.contact-sec1 .contact-form dt.required::after { content: "必須"; display: inline-block; color: #fff; background: #e90c16; }
.contact-sec1 .contact-form dd.name p { display: flex; align-items: center; gap: 0.3rem; }
.contact-sec1 .contact-form dd.name label { flex: 1; display: flex; align-items: center; gap: 0.1rem; }
.contact-sec1 .contact-form dd.name label input { flex: 1; }
.contact-sec1 .contact-form dd.zipcode input { width: 2.5rem; }
.contact-sec1 .contact-form :is(dt.zipcode, dd.zipcode) { padding-bottom: 0; }
.contact-sec1 .contact-form :is(dt.address, dd.address) { border: none; }
.contact-sec1 .contact-form dd.address span:not(:last-child) { display: block; margin-bottom: 0.1rem; }
.contact-sec1 .contact-form .privacy .box { border: 0.03rem solid #ececec; overflow: auto; }
.contact-sec1 .contact-form .privacy .box h4 { border-bottom: 0.05rem solid #e90c16; }
.contact-sec1 .contact-form .privacy .box h5 { margin: 1.0em 0; }
.contact-sec1 .contact-form .privacy .box h5 span { display: inline-block; border-bottom: 1px solid #e90c16; }
.contact-sec1 .contact-form .privacy .box p { margin: 1.0em 0; }
.contact-sec1 .contact-form .privacy .box ul { margin: 1.0em 0; }
.contact-sec1 .contact-form .privacy .box li { position: relative; padding-left: 1.0em; }
.contact-sec1 .contact-form .privacy .box li::before { content: "・"; position: absolute; left: 0; }
.contact-sec1 .contact-form .privacy .box li p { margin: 0; }
.contact-sec1 .contact-form .privacy .input { text-align: center; vertical-align: middle; }
.contact-sec1 .contact-form .privacy .input input { vertical-align: middle; }
.contact-sec1 .contact-form .button { text-align: center; }
.contact-sec1 .contact-form :is(input[type="text"], input[type="email"], textarea) { width: 100%; padding: 1.0em; background: #ececec; border: none; }
.contact-sec1 .contact-form textarea { line-height: 1.4; }
.contact-sec1 .contact-form input[type="submit"] { display: inline-block; color: #fff; font-weight: bold; background: #e90c16; border: none; outline: none; cursor: pointer; }
.contact-sec1 .contact-form .privacy .input .wpcf7-form-control-wrap { vertical-align: middle; }
.contact-sec1 .contact-form .privacy .wpcf7-list-item-label { vertical-align: middle; }
.contact-sec1 .contact-form .wpcf7-spinner { position: absolute; }

.success-sec1 .section-body .box { text-align: center; line-height: 2.0; background: #fff; }
.success-sec1 .section-body .box p { margin-bottom: 1.0em; }
.success-sec1 .section-body .box p em { font-weight: bold; }
.success-sec1 .section-footer { text-align: center; }
.success-sec1 .section-footer a { display: inline-block; color: #fff; font-weight: bold; text-align: center; background: #e90c16; }

.company-section-title { color: #fff; margin-bottom: 1.0em; }
.company-section-title span { display: inline-block; text-align: center; background: #3621d4; }
.company-sec1 { text-align: center; }
.company-sec1 h3 em { color: #e90c16; }
.company-sec1 p { font-weight: bold; }
.company-sec1 p span { color: #e90c16; }
.company-sec2 { background: #ececec; }
.company-sec2 p { margin-bottom: 1.0em; }
.company-sec2 .text .sign { text-align: right; }
.company-sec2 .text .sign .position { vertical-align: 0.5em; margin-right: 1.0em; }
.company-sec2 .text .sign .name { font-family: serif; }
.company-sec3 .section-header p em { color: #e90c16; font-weight: bold; }
.company-sec3 .section-body .item { position: relative; }
.company-sec3 .section-body .item-header { position: absolute; left: 0; right: 0; top: 0; text-align: center; background: #e90c16; }
.company-sec3 .section-body .item-header::before { content: ""; display: block; position: absolute; left: 0; right: 0; top: 0; width: 1.45rem; height: 1.45rem; margin: auto; background: #e90c16; border-radius: 0.725rem; }
.company-sec3 .section-body .item-header::after { content: ""; display: block; position: absolute; left: 0; right: 0; top: 0.15rem; width: 0.73rem; height: 0.48rem; margin: auto; background-repeat: no-repeat; background-position: center; background-size: contain; }
.company-sec3 .section-body .item:nth-child(1) .item-header::after { background-image: url(images/company-sec3-img01.png); }
.company-sec3 .section-body .item:nth-child(2) .item-header::after { background-image: url(images/company-sec3-img02.png); }
.company-sec3 .section-body .item-header h4 { position: relative; z-index: 10; color: #fff; }
.company-sec3 .section-body .item-body { background: #ffe9ea; }
.company-sec3 .section-body .item-body ul { display: table; margin: auto; }
.company-sec3 .section-body .item-body li { display: flex; align-items: center; color: #e90c16; font-weight: bold; }
.company-sec3 .section-body .item-body li .alphabet { display: flex; justify-content: center; align-items: center; background: #fff; }
.company-sec3 .section-body .item-body li .text { flex: 1; line-height: 1.0; }
.company-sec3 .section-body .item-body li .text span { display: block; position: absolute; color: #000; font-weight: 500; }
.company-sec4 .section-body table { width: 100%; }
.company-sec4 .section-body tr:not(:last-child) :is(th, td) { border-bottom: 1px solid #dddddd; }
.company-sec4 .section-body th { text-align: left; vertical-align: top; white-space: nowrap; }

.opinion-section-title { color: #fff; margin-bottom: 1.0em; }
.opinion-section-title span { display: inline-block; text-align: center; background: #3621d4; }
.opinion-sec1 { background: #ececec; }
.opinion-sec1 .item { background: #fff; }
.opinion-sec1 .item .image { position: relative; }
.opinion-sec1 .item .image .name { position: absolute; left: 0; bottom: 0; color: #fff; font-weight: bold; text-align: center; background: #e90c16; }
.opinion-sec1 .item .text .text-header { color: #b9b9b9; }
.opinion-sec2 { background: #fff; }
.opinion-sec2 .section-body .item { display: block; background: #ffd2d2; }
.opinion-sec2 .section-body .item .image { position: relative; }
.opinion-sec2 .section-body .item .image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.opinion-sec2 .section-body .item .image .category { position: absolute; right: 0; bottom: 0; color: #fff; font-weight: bold; text-align: center; background: #e90c16; }
.opinion-sec2 .section-footer { text-align: center; }
.opinion-sec2 .section-footer a { display: inline-block; color: #fff; font-weight: bold; text-align: center; background: #e8000c; }

.staff-sec1 .section-header p { font-weight: bold; text-align: center; margin-bottom: 1.0em; }
.staff-sec1 .section-header p em { color: #e90c16; }
.staff-sec1 .section-body h3 { border-bottom: 0.05rem solid #e90c16; }
.staff-sec1 .section-body .item:not(:last-child) { border-bottom: 1px solid #898989; }
.staff-sec1 .section-body .item-header h4 { display: inline-block; color: #fff; background: #e90c16; }
.staff-sec1 .section-body .item-body .text h5 { color: #e90c16; }
.staff-sec1 .section-body .item-body .text .name span { margin-left: 1.0em; }

.home-button { position: relative; }
.home-button::after { content: ""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #3621d4; transform: translate(0.07rem, 0.07rem); }
.home-button a { display: block; position: relative; z-index: 10; color: #fff; font-weight: bold; text-align: center; background: #e8000c; }
.home-service-item { display: block; background: #ffd2d2; }
.home-service-item .image { position: relative; }
.home-service-item .image img { position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; }
.home-service-item .image .category { position: absolute; right: 0; bottom: 0; color: #fff; font-weight: bold; text-align: center; background: #e90c16; }
.home-service-item .text a.link { display: block; position: relative; color: #e8000c; text-align: center; border: 0.03rem solid #e8000c; }
.home-service-item .text a.link::after { content: ""; display: block; position: absolute; right: 0; top: 0; bottom: 0; width: 0.08rem; height: 0.08rem; margin: auto; border-top: 0.02rem solid #e8000c; border-right: 0.02rem solid #e8000c; transform: rotate(45deg); }
.home-sec2 { background: url("./images/home-sec2-bg.png") no-repeat left bottom; background-size: cover; }
.home-sec2 .box { background: #f6f6f6; box-shadow: 0.16rem 0.16rem 0.57rem rgba(0,0,0,0.13); }
.home-sec2 .box-body h2 { color: #d7443e; }
.home-sec2 .box-body p { margin-bottom: 1.0em; }
.home-sec2 .box-body .icons { display: flex; }
.home-sec3 { background: url("./images/home-sec3-bg.png") no-repeat left top; background-size: cover; }
.home-sec3 .section-header h2 { color: #fff; }
.home-sec3 .section-header p { color: #fff; font-weight: bold; }
.home-sec3 .section-header p span { display: inline-block; position: relative; background: #e8000c; margin: 0 0.4rem; }
.home-sec3 .section-header p span::before { content: ""; display: block; position: absolute; left: -0.4rem; top: 0; bottom: 0; width: 0.4rem; background: #e8000c; clip-path: polygon(0 100%, 100% 0, 100% 100%); }
.home-sec3 .section-header p span::after { content: ""; display: block; position: absolute; right: -0.4rem; top: 0; bottom: 0; width: 0.4rem; background: #e8000c; clip-path: polygon(0 0, 100% 0, 0 100%); }
.home-sec4 .box { background: url("./images/home-sec4-bg.png") no-repeat center; background-size: cover;  box-shadow: 0.16rem 0.16rem 0.57rem rgba(0,0,0,0.13); }
.home-sec4 .box-header h2 { color: #e8000c; text-align: center; }
.home-sec4 .box-header h2 em { display: inline-block; color: #fff; background: #e8000c; }
.home-sec4 .box-footer h3 { text-align: center; }
.home-sec4 .box-footer h3 em { display: inline-block; color: #e8000c; background: #fff; }
.home-sec4 .box-footer p { font-weight: bold; text-align: center; }
.home-sec6 .section-header h2 { color: #fff; }
.home-sec6 .section-body .box { background: #fff; box-shadow: 0.16rem 0.16rem 0.57rem rgba(0,0,0,0.13); }
.home-sec6 .section-body a.item { display: block; }
.home-sec6 .section-body a.item:not(:last-child) { border-bottom: 1px solid #f0555d; }
.home-sec7 .section-body h2 { color: #fff; }
.home-sec7 .section-body p { color: #fff; margin-bottom: 1.0em; }
.home-sec8 .box { background: #fff; }
.home-sec8 .box-header h2 { color: #e8000c; }
.home-sec8 .box-header p { font-weight: bold; }
.home-sec8 .box-body .item:not(:last-child) { border-bottom: 1px solid #f0555d; }
.home-sec8 .box-body .item .name { text-align: right; }
.home-sec9 { background: url("./images/home-sec9-bg.png") no-repeat top; background-size: cover; }
.home-sec9 .section-header h2 { color: #3621d4; }
.home-sec9 .section-body .item .item-content { position: relative; }
.home-sec9 .section-body .item .item-content .sign { position: absolute; left: 0; top: 0; font-weight: bold; }
.home-sec9 .section-body .item .item-content .button { display: block; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; line-height: 1; }
.home-sec9 .section-body .item .item-content .button img { vertical-align: middle; }
.home-sec9 .section-body .item .item-content .button:hover { opacity: 1; }
.home-sec9 .section-body .item .question { background: #fff; cursor: pointer; }
.home-sec9 .section-body .item .question .sign { color: #6b6b6b; }
.home-sec9 .section-body .item .answer { background: #ffe9ea; }
.home-sec9 .section-body .item .answer .sign { color: #e7000c; }

.works01-sec1 h3 { color: #fff; }
.works01-sec1 h3 span { display: inline-block; text-align: center; background: #3621d4; }
.works01-sec1 p { color: #fff; text-align: center; }
.works01-sec1 p span { display: inline-block; position: relative; background: #e8000c; }
.works01-sec1 p span::after { content: ""; display: block; position: absolute; right: -0.4rem; top: 0; bottom: 0; width: 0.4rem; background: #e8000c; clip-path: polygon(0 0, 100% 50%, 0 100%); }
.works01-sec2 { background: #ececec; }
.works01-sec2 .item { position: relative; }
.works01-sec2 .item:not(:last-child)::after { content: ""; display: block; position: absolute; left: 0; right: 0; bottom: -0.38rem; width: 1.46rem; height: 0.38rem; margin: auto; background: #e8000c; clip-path: polygon(0 0, 100% 0, 50% 100%); }
.works01-sec2 .item-header { background: #e90c16; }
.works01-sec2 .item-body { background: #fff; }
.works01-sec2 .item-body h3 { color: #e8000c; }
.works01-sec3 .item:not(:last-child) { border-bottom: 1px solid #898989; }
.works01-sec3 .item .text h3 { color: #fff; }
.works01-sec3 .item .text h3 span { display: inline-block; text-align: center; background: #e90c16; }


@media screen and (min-width: 768px) {

    .for_sp { display: none; }

    section { padding: 1.0rem 0; }
    section:last-child { padding-bottom: 2.8rem; }
    .section-wrapper { padding: 0 max(calc((100% - 1545px) * 0.5), 0.32rem); }

    .notice-item { padding: 0.4rem 0; }
    .notice-item .item-header .date { font-size: 0.38rem; }
    .notice-item .item-header .category { font-size: 0.24rem; padding: 0.01rem 0.1rem; }
    .notice-item .item-body h3 { font-size: 0.3rem; margin: 0.1rem 0; }
    .notice-item .item-body p { font-size: 0.24rem; }

    .blog-item { display: flex; padding: 0.2rem; }
    .blog-item:not(:last-child) { margin-bottom: 0.4rem; }
    .blog-item .image { width: 4.35rem; }
    .blog-item .text { flex: 1; padding: 0.2rem 0.5rem; }
    .blog-item .text-header { font-size: 0.24rem; }
    .blog-item .text-body h3 { font-size: 0.3rem; margin: 0.1rem 0; }
    .blog-item .text-body p { font-size: 0.25rem; }

    .cases-items { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.6rem 0.3rem; }
    .cases-item { position: relative; flex: 1; }
    .cases-item .image { height: 3.7rem; }
    .cases-item .image img { width: calc(340 / 400 * 100%); }
    .cases-item .image .category { display: flex; justify-content: center; align-items: center; text-align: left; font-size: 0.28rem; line-height: 1.2; padding: 0.1rem; min-width: 2.4rem; min-height: 0.85rem; bottom: -0.25rem; }
    .cases-item .text { padding: 0.5rem 0.3rem 1.2rem; }
    .cases-item .text h3 { font-size: 0.25rem; margin-bottom: 0.1rem; }
    .cases-item .text p { font-size: 0.25rem; }
    .cases-item .text a.link { position: absolute; left: 0.3rem; right: 0.3rem; bottom: 0.4rem; font-size: 0.2rem; padding: 0.1rem; }
    .cases-item .text a.link::after { right: 0.2rem; }

    .post-pagination { gap: 0.1rem; margin: 1.0rem 0; }
    .post-pagination .page-numbers { font-size: 0.32rem; width: 0.54rem; height: 0.5rem;  }

    .post-single .box { padding: 0.7rem max(calc((100% - 1020px) * 0.5), 0.32rem) 1.0rem; }
    .post-single .box-header .post-attribute { display: flex; align-items: center; gap: 0.2rem; margin-bottom: 0.2rem; }
    .post-single .box-header .post-attribute .date { font-size: 0.25rem; }
    .post-single .box-header .post-attribute .category { font-size: 0.19rem; padding: 0 0.05rem; }
    .post-single .box-header h3 { font-size: 0.34rem; margin-bottom: 0.5rem; }
    .post-single .box-body p { font-size: 0.24rem; }
    .post-single .box-body .thumbnail { margin-bottom: 0.3rem; }
    .post-single .box-body .wp-block-button__link { font-size: 0.32rem; padding: 0.05rem 0.1rem; min-width: 3.5rem; margin: 0.3rem 0; }

    .post-single-navigation { margin: 0.9rem 0; }
    .post-single-navigation .prev-link a { font-size: 0.24rem; }
    .post-single-navigation .next-link a { font-size: 0.24rem; }
    .post-single-navigation .back-link a { font-size: 0.24rem; padding: 0.05rem 0.1rem; width: 2.6rem; }

    #page { padding-top: 0.94rem; }

    #header { position: fixed; left: 0; right: 0; top: 0; height: 0.94rem; z-index: 1000; display: flex; justify-content: space-between; gap: 0.3rem; background: #f3f3f3; padding: 0 0.5rem; }
    #header .logo { flex: 1; display: flex; align-items: center; }
    #header .logo img { width: 2.85rem; max-width: 100%; }
    #header .menu ul.parent a { font-size: 0.2rem; }
    #header .menu ul.parent { display: flex; gap: 0.5rem; height: 100%; }
    #header .menu ul.parent > li > a { display: flex; justify-content: center; align-items: center; height: 100%; }
    #header .menu ul.parent > li.home { display: none; }
    #header .menu ul.sub { position: fixed; left: 0; right: 0; top: 0.94rem; z-index: 990; background: #fff; display: none; }
    #header .menu ul.sub > li { background: #fff; padding: 0 max(calc((100% - 1250px) * 0.5), 0.1rem); }
    #header .menu ul.sub > li:first-child { padding-top: 0.2rem; }
    #header .menu ul.sub > li:last-child { padding-bottom: 0.2rem; }
    #header .menu ul.sub > li > a { display: block; position: relative; padding: 0.2rem 0; font-weight: bold; }
    #header .menu ul.sub > li > a::after { content: ""; display: block; position: absolute; right: 0.1rem; top: 0; bottom: 0; width: 0.08rem; height: 0.08rem; margin: auto; border-top: 1px solid #000; border-right: 1px solid #000; transform: rotate(45deg); }
    #header .menu ul.sub > li:not(:last-child) > a { border-bottom: 1px solid #d9d9d9; }
    #header .menu ul.parent > li:hover > a { color: #c7000a; }
    #header .menu ul.sub > li:hover > a { color: #c7000a; }
    #header .menu-button { display: none; }

    #footer .footer-cta { position: relative; padding: 0 calc((100% - 1545px) * 0.5); }
    #footer .footer-cta .box { position: relative; z-index: 10; padding: 0.4rem 0.32rem 1.0rem; margin-top: -1.8rem; }
    #footer .footer-cta h2 { margin-bottom: 0.6rem; }
    #footer .footer-cta h2 img { width: 4.13rem; }
    #footer .footer-cta .items { display: flex; gap: 0.4rem; }
    #footer .footer-cta .item { flex: 1; min-height: 1.18rem; }
    #footer .footer-cta .item-mail .mail { font-size: 0.41rem; }
    #footer .footer-cta .item-tel .tel { font-size: 0.44rem; line-height: 1.0; }
    #footer .footer-cta .item-tel .tel span { font-size: 0.3rem; margin-right: 0.1rem; }
    #footer .footer-cta .item-tel .hour { font-size: 0.16rem; text-align: right; }
    #footer .footer-menu { display: flex; gap: 0.3rem; justify-content: space-between; padding: 0.5rem max(calc((100% - 1545px) * 0.5), 0.32rem) 0.8rem; }
    #footer .footer-menu .logo .image { margin-bottom: 0.1rem; }
    #footer .footer-menu .logo .image img { width: 2.24rem; }
    #footer .footer-menu .logo .address p { font-size: 0.19rem; }
    #footer .footer-menu .logo .address p span { font-size: 0.16rem; }
    #footer .footer-menu .menu .items { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.1rem 0.5rem; max-width: 4.0rem; }
    #footer .footer-menu .menu .item a { font-size: 0.14rem; }
    #footer .footer-menu .menu .item-empty-sp { display: none; }
    #footer .footer-copyright { display: flex; justify-content: space-between; padding: 0.3rem max(calc((100% - 1545px) * 0.5), 0.32rem); }
    #footer .footer-copyright .copyright { font-size: 0.14rem; }
    #footer .footer-copyright .description { font-size: 0.13rem; }

    #home-banner img { width: 4.36rem; }

    .page-header { position: relative; padding: 0.3rem 0; }
    .page-header .breadcrumb { position: absolute; z-index: 20; top: 0.3rem; right: 0.6rem; }
    .page-header .breadcrumb ul { display: flex; justify-content: flex-end; color: #fff; font-size: 0.25rem; }
    .page-header .breadcrumb li:not(:last-child)::after { content: "▶"; margin: 0 0.1rem; }
    .page-header .page-title { padding-left: 1.8rem; }
    .page-header .page-title h2 { font-size: 0.65rem; }
    .page-header .page-title-question .image img { width: 5.265rem; }
    .page-header .page-title-notice .image img { width: 3.11rem; }
    .page-header .page-title-blog .image img { width: 2.565rem; }
    .page-header .page-title-company .image img { width: 5.78rem; }
    .page-header .page-title-opinion .image img { width: 3.44rem; }
    .page-header .page-title-staff .image img { width: 2.71rem; }
    .page-header .page-title-cases .image img { width: 2.99rem; }

    .notice-sec1 .section-wrapper { padding: 0 max(calc((100% - 1260px) * 0.5), 0.32rem); }

    .question-sec1 .item { padding: 0.6rem max(calc((100% - 1300px) * 0.5), 0.6rem); }
    .question-sec1 .item:not(:last-child) { margin-bottom: 0.2rem; }
    .question-sec1 .item h2 { font-size: 0.37rem; padding-left: 0.8rem; padding-top: 0.05rem; margin-bottom: 0.2rem; }
    .question-sec1 .item h2::before { font-size: 0.38rem; }
    .question-sec1 .item p { font-size: 0.24rem; padding-left: 0.8rem; padding-top: 0.15rem; }
    .question-sec1 .item p::before { font-size: 0.38rem; }

    .contact-sec1 .contact-form { padding: 0.6rem max(calc((100% - 1065px) * 0.5), 0.32rem); }
    .contact-sec1 .contact-form h3 { font-size: 0.35rem; padding: 0.2rem 0.4rem; margin-bottom: 0.3rem; }
    .contact-sec1 .contact-form dl { display: flex; flex-wrap: wrap; margin-bottom: 1.0rem; }
    .contact-sec1 .contact-form :is(dt, dd) { border-top: 1px solid #c6c6c6; padding: 0.25rem 0; }
    .contact-sec1 .contact-form dt { position: relative; font-size: 0.18rem; width: 2.2rem; padding-top: 0.35rem; }
    .contact-sec1 .contact-form dt.required::after { position: absolute; right: 0; top: 0.35rem; font-size: 0.14rem; padding: 0.01rem 0.05rem; }
    .contact-sec1 .contact-form dt span { display: block; padding-left: 0.8rem; line-height: 1.0; }
    .contact-sec1 .contact-form dd { width: calc(100% - 2.2rem); padding-left: 0.3rem; }
    .contact-sec1 .contact-form .privacy .box { height: 2.8rem; padding: 0.3rem max(calc((100% - 857px) * 0.5), 0.32rem); }
    .contact-sec1 .contact-form .privacy .box h4 { font-size: 0.23rem; }
    .contact-sec1 .contact-form .privacy .box h5 { font-size: 0.2rem; }
    .contact-sec1 .contact-form .privacy .input { margin: 0.3rem 0; }
    .contact-sec1 .contact-form :is(input[type="text"], input[type="email"], textarea) { font-size: 0.16rem; }
    .contact-sec1 .contact-form textarea { height: 5.28rem; }
    .contact-sec1 .contact-form input[type="submit"] { font-size: 0.32rem; padding: 0.1rem; width: 3.55rem; }
    .contact-sec1 .contact-form .wpcf7-not-valid-tip { font-size: 0.16rem; }

    .success-sec1 .section-body .box { padding: 0.6rem 0.32rem; }
    .success-sec1 .section-body .box h3 { font-size: 0.4rem; margin-bottom: 0.3rem; }
    .success-sec1 .section-body .box p { font-size: 0.25rem; }
    .success-sec1 .section-footer { margin: 0.6rem 0; }
    .success-sec1 .section-footer a { font-size: 0.32rem; padding: 0.1rem; width: 3.55rem; }

    .company-section-title { font-size: 0.49rem; }
    .company-section-title span { padding: 0.01rem 0.5rem; }
    .company-sec1 { padding: 0.8rem 0; }
    .company-sec1 .section-wrapper { padding: 0 max(calc((100% - 1400px) * 0.5), 0.32rem); }
    .company-sec1 h3 { font-size: 0.65rem; }
    .company-sec1 p { font-size: 0.3rem; }
    .company-sec1 p em { font-size: 0.37rem; }
    .company-sec2 { position: relative; }
    .company-sec2 .section-wrapper { padding: 0 max(calc((100% - 1400px) * 0.5), 0.32rem); }
    .company-sec2 .image { position: absolute; left: calc(50% + 1.5rem); bottom: -1.0rem; }
    .company-sec2 .image img { width: 5.94rem; }
    .company-sec2 .text { width: 8.65rem; max-width: 60%; }
    .company-sec2 .text p { font-size: 0.27rem; }
    .company-sec2 .text .sign .position { font-size: 0.2rem; }
    .company-sec2 .text .sign .name { font-size: 0.43rem; }
    .company-sec3 .section-wrapper { padding: 0 max(calc((100% - 1400px) * 0.5), 0.32rem); }
    .company-sec3 .section-header { margin-bottom: 1.0rem; }
    .company-sec3 .section-header p { font-size: 0.25rem; }
    .company-sec3 .section-body .items { display: flex; gap: 0.4rem; }
    .company-sec3 .section-body .item { flex: 1; padding-top: 0.5rem; }
    .company-sec3 .section-body .item-header { max-width: 5.66rem; margin: auto; border-radius: 0.12rem; padding: 0.2rem 0.1rem; }
    .company-sec3 .section-body .item-header h4 { font-size: 0.41rem; }
    .company-sec3 .section-body .item-header::before { top: -0.5rem; }
    .company-sec3 .section-body .item-header::after { top: -0.4rem; }
    .company-sec3 .section-body .item-body { border-radius: 0.12rem; padding: 0.8rem 0.1rem 0.6rem; }
    .company-sec3 .section-body .item-body li { font-size: 0.45rem; gap: 0.2rem; width: 5.0rem; }
    .company-sec3 .section-body .item-body li .alphabet { font-size: 0.62rem; width: 1.15rem; height: 1.15rem; border-radius: 0.575rem; }
    .company-sec3 .section-body .item-body li .text span { font-size: 0.27rem; padding-top: 0.05rem; }
    .company-sec3 .section-body .item-body li:not(:last-child) { margin-bottom: 0.1rem; }
    .company-sec4 .section-wrapper { padding: 0 max(calc((100% - 1400px) * 0.5), 0.32rem); }
    .company-sec4 .section-body :is(th, td) { padding: 0.3rem 0; }
    .company-sec4 .section-body th { font-size: 0.35rem; padding-right: 0.3rem; }
    .company-sec4 .section-body td { font-size: 0.3rem; }
    .company-sec5 .section-wrapper { padding: 0 max(calc((100% - 1400px) * 0.5), 0.32rem); }
    .company-sec5 .iframe-inner { height: 7.0rem; padding: 0; }

    .opinion-section-title { font-size: 0.49rem; }
    .opinion-section-title span { padding: 0.01rem 0.5rem; }
    .opinion-sec1 .item { display: flex; align-items: flex-start; gap: 0.5rem;  padding: 0.25rem; }
    .opinion-sec1 .item:not(:last-child) { margin-bottom: 0.3rem; }
    .opinion-sec1 .item .image { width: 4.35rem; }
    .opinion-sec1 .item .image .name { font-size: 0.25rem; padding: 0.1rem; min-width: 2.2rem; }
    .opinion-sec1 .item .text { flex: 1; }
    .opinion-sec1 .item .text .text-header { font-size: 0.24rem; margin-bottom: 0.1rem; }
    .opinion-sec1 .item .text .text-body { font-size: 0.25rem; }
    .opinion-sec2 .section-body .items { display: flex; gap: 0.25rem; }
    .opinion-sec2 .section-body .item { flex: 1; max-width: 3.7rem; }
    .opinion-sec2 .section-body .item .image { height: 3.35rem; }
    .opinion-sec2 .section-body .item .image img { width: calc(308 / 370 * 100%); }
    .opinion-sec2 .section-body .item .image .category { font-size: 0.25rem; padding: 0.1rem; min-width: 2.2rem; bottom: -0.25rem; }
    .opinion-sec2 .section-body .item .text { font-size: 0.25rem; padding: 0.5rem 0.3rem 0.3rem; }
    .opinion-sec2 .section-footer { margin: 0.5rem 0; }
    .opinion-sec2 .section-footer a { font-size: 0.27rem; padding: 0.1rem; min-width: 3.4rem; }

    .staff-sec1 .section-header p { font-size: 0.37rem; }
    .staff-sec1 .section-header p small { font-size: 0.3rem; }
    .staff-sec1 .section-body h3 { font-size: 0.65rem; margin-bottom: 0.2rem; }
    .staff-sec1 .section-body h3:not(:first-child) { margin-top: 1.0rem; }
    .staff-sec1 .section-body .item { padding: 0.5rem 0; }
    .staff-sec1 .section-body .item-header h4 { font-size: 0.37rem; padding: 0.05rem 0.1rem; margin-bottom: 0.2rem; }
    .staff-sec1 .section-body .item-body { display: flex; gap: 0.3rem; }
    .staff-sec1 .section-body .item-body .image { width: 6.23rem; max-width: 40%; }
    .staff-sec1 .section-body .item-body .text { flex: 1; padding: 0 0.5rem; }
    .staff-sec1 .section-body .item-body .text h5 { font-size: 0.3rem; margin: 0.3rem 0; }
    .staff-sec1 .section-body .item-body .text .name { font-size: 0.47rem; }
    .staff-sec1 .section-body .item-body .text .name span { font-size: 0.21rem; }
    .staff-sec1 .section-body .item-body .text p { font-size: 0.25rem; }

    .home-button { width: 3.4rem; margin: auto; }
    .home-button a { font-size: 0.27rem; padding: 0.2rem; }
    .home-button:hover::after { opacity: 0.75; }
    .home-service-items { display: flex!important; gap: 0.35rem; }
    .home-service-item { position: relative; flex: 1; }
    .home-service-item .image { height: 3.75rem; }
    .home-service-item .image img { width: calc(340 / 400 * 100%); }
    .home-service-item .image .category { display: flex; justify-content: center; align-items: center; text-align: left; font-size: 0.28rem; line-height: 1.2; padding: 0.1rem; min-width: min(2.4rem, 100%); min-height: 0.85rem; bottom: -0.25rem; }
    .home-service-item .text { font-size: 0.25rem; padding: 0.5rem 0.3rem 1.2rem; }
    .home-service-item .text a.link { position: absolute; left: 0.3rem; right: 0.3rem; bottom: 0.4rem; font-size: 0.2rem; padding: 0.1rem 0.2rem 0.1rem 0.1rem; }
    .home-service-item .text a.link::after { right: 0.2rem; }
    .home-sec1 { background: url("./images/home-eyecatch-bg.png") no-repeat top; background-size: 100%; padding-top: 2vw; }
    .home-sec1 .eyecatch { text-align: center; }
    .home-sec1 .eyecatch img { width: 67.6vw; }
    .home-sec2 .box { position: relative; margin-right: calc((100vw - 100%) / -2); padding: 1.0rem calc((100vw - 100%) / 2) 1.0rem max(10vw, 0.5rem); }
    .home-sec2 .box-body { display: flex; justify-content: space-between; gap: 0.5rem; margin-bottom: 0.3rem; }
    .home-sec2 .box-body .title img { width: 4.11rem; }
    .home-sec2 .box-body h2 { font-size: 0.49rem; margin: 0.3rem 0; }
    .home-sec2 .box-body p em { font-size: 0.28rem; }
    .home-sec2 .box-body p { font-size: 0.25rem; }
    .home-sec2 .box-body .icons { flex-direction: column; gap: 0.3rem; }
    .home-sec2 .box-body .icons img { width: 2.25rem; }
    .home-sec3 .section-wrapper { padding: 1.2rem 0.8rem 1.0rem 2.0rem; }
    .home-sec3 .section-header { margin-bottom: 0.7rem; }
    .home-sec3 .section-header .title { margin-bottom: 0.4rem; }
    .home-sec3 .section-header .title img { width: 3.49rem; }
    .home-sec3 .section-header h2 { font-size: 0.49rem; margin-bottom: 0.1rem; }
    .home-sec3 .section-header h2 { font-size: 0.49rem; }
    .home-sec3 .section-header p { font-size: 0.25rem; }
    .home-sec3 .section-header p span { font-size: 0.33rem; }
    .home-sec4 { padding-top: 0; margin-top: -1.0rem; }
    .home-sec4 .box { position: relative; margin: 0 calc(((100vw - 100%) / -2) + 0.5rem) 0 calc((100vw - 100%) / -2); padding: 1.0rem 0.5rem 1.0rem 1.0rem; }
    .home-sec4 .box-header h2 { font-size: 0.5rem; }
    .home-sec4 .box-header h2 em { font-size: 0.67rem; padding: 0 0.1rem; }
    .home-sec4 .box-header h2 em small { font-size: 0.51rem; }
    .home-sec4 .box-body { margin: 0.5rem 0 0.8rem; }
    .home-sec4 .box-footer h3 { font-size: 0.7rem; margin-bottom: 0.2rem; }
    .home-sec4 .box-footer h3 em { padding: 0 0.1rem; }
    .home-sec4 .box-footer h3 small { font-size: 0.51rem; }
    .home-sec4 .box-footer p { font-size: 0.25rem; }
    .home-sec5 { padding-top: 0; }
    .home-sec5 .section-wrapper { padding: 0 min(1.4rem, 5vw); }
    .home-sec5 .section-header { margin-bottom: 0.5rem; }
    .home-sec5 .section-header .title { margin-bottom: 0.1rem; }
    .home-sec5 .section-header .title img { width: 6.16rem; }
    .home-sec5 .section-header h2 { font-size: 0.49rem; }
    .home-sec6 { background: url("./images/home-sec6-bg.png") no-repeat bottom; background-size: cover; }
    .home-sec6 .section-header { padding-top: 3.6rem; }
    .home-sec6 .section-header .title { margin-bottom: 0.3rem; }
    .home-sec6 .section-header .title img { width: 2.36rem; }
    .home-sec6 .section-header h2 { font-size: 0.49rem; }
    .home-sec6 .section-body { padding: 0.6rem 0 0.8rem; }
    .home-sec6 .section-body .box { margin-right: calc((100vw - 100%) / -2); padding-right: calc((100vw - 100%) / -2); }
    .home-sec6 .section-body .items { max-width: 7.6rem; padding: 0.8rem 0; margin-left: max(15vw, 0.5rem); }
    .home-sec6 .section-body a.item { padding: 0.3rem 0; }
    .home-sec6 .section-body a.item .date { font-size: 0.34rem; }
    .home-sec6 .section-body a.item h3 { font-size: 0.25rem; }
    .home-sec7 { padding-bottom: 1.8rem; }
    .home-sec7 .section-wrapper { padding: 0 1.2rem; }
    .home-sec7 .section-header .title img { width: 2.34rem; }
    .home-sec7 .section-body { background: url("./images/home-sec7-bg.png") no-repeat left; background-size: cover; }
    .home-sec7 .section-body { min-height: 10.5rem; margin: 0 calc((100vw - 100%) * -0.5) 0.8rem; padding: 0.8rem calc((100vw - 100%) * 0.5) 0; }
    .home-sec7 .section-body h2 { font-size: 0.49rem; margin-bottom: 0.5rem; }
    .home-sec7 .section-body p { font-size: 0.25rem; line-height: 2.0; }
    .home-sec8 { position: relative; background: url("./images/home-sec8-bg.png") no-repeat top; background-size: cover; padding: 1.4rem 0 2.8rem; }
    .home-sec8::before { content: ""; display: block; position: absolute; z-index: 10; left: 0; top: -0.4rem; width: min(8.36rem, 33%); height: 8.01rem; background: url("./images/home-sec8-img01.png") no-repeat top; background-size: contain; }
    .home-sec8::after { content: ""; display: block; position: absolute; left: 0; right: 0; bottom: 0; height: 3.08rem; background: url("./images/home-sec8-img02.png") no-repeat center; background-size: cover; }
    .home-sec8 .section-wrapper { padding: 0; }
    .home-sec8 .box { margin-left: 2.46rem; padding-left: calc(min(8.36rem, 33%) - 2.46rem + 0.5rem); padding-right: 1.0rem; }
    .home-sec8 .box-header .title { padding-bottom: 0.5rem; }
    .home-sec8 .box-header .title img { width: 2.78rem; margin-top: -1.0rem; }
    .home-sec8 .box-header h2 { font-size: 0.49rem; margin-bottom: 0.2rem; }
    .home-sec8 .box-header p { font-size: 0.25rem; }
    .home-sec8 .box-body .item { padding: 0.3rem 0; }
    .home-sec8 .box-body .item p { font-size: 0.25rem; }
    .home-sec8 .box-body .item .name { font-size: 0.18rem; }
    .home-sec8 .box-footer { padding: 0.3rem 0 1.8rem; }
    .home-sec9 { margin: 1.0rem 0 0; }
    .home-sec9 .section-wrapper { padding: 0; }
    .home-sec9 .section-header { margin-bottom: 0.8rem; margin-top: 1.0rem; padding: 0 5vw 0 15vw; }
    .home-sec9 .section-header .title { margin-bottom: 0.3rem; }
    .home-sec9 .section-header .title img { width: 4.31rem; }
    .home-sec9 .section-header h2 { font-size: 0.49rem; }
    .home-sec9 .section-body { margin-bottom: 0.6rem;  padding: 0 5vw 0 15vw; }
    .home-sec9 .section-body .item { margin-bottom: 0.2rem; }
    .home-sec9 .section-body .item .item-content p { font-size: 0.25rem; padding: 0.3rem 1.1rem 0.3rem 1.0rem; }
    .home-sec9 .section-body .item .item-content .sign { font-size: 0.38rem; left: 0.4rem; top: 0.2rem; }
    .home-sec9 .section-body .item .item-content .button { width: 0.54rem; height: 0.54rem; right: 0.5rem; }

    .works01-sec1 h3 { font-size: 0.65rem; }
    .works01-sec1 h3 span { padding: 0.1rem 1.0rem; }
    .works01-sec1 p { font-size: 0.34rem; }
    .works01-sec1 p span { padding: 0.1rem 0.5rem; }
    .works01-sec1 .image { margin: 0.5rem 0; }
    .works01-sec2 { padding: 1.0rem 0; }
    .works01-sec2 .item { display: flex; }
    .works01-sec2 .item:not(:last-child) { margin-bottom: 0.38rem; }
    .works01-sec2 .item-header { display: flex; justify-content: center; align-items: center; width: 2.48rem; }
    .works01-sec2 .item-header img { width: 1.31rem; }
    .works01-sec2 .item-body { flex: 1; padding: 0.7rem; }
    .works01-sec2 .item-body h3 { font-size: 0.37rem; margin-bottom: 0.2rem; }
    .works01-sec2 .item-body p { font-size: 0.25rem; }
    .works01-sec3 .item { display: flex; flex-direction: row-reverse; gap: 0.3rem; padding: 0.7rem 0; }
    .works01-sec3 .item .text { flex: 1; }
    .works01-sec3 .item .text h3 { font-size: 0.37rem; margin-bottom: 0.4rem; }
    .works01-sec3 .item .text h3 span { padding: 0 0.4rem; }
    .works01-sec3 .item .text p { font-size: 0.25rem; }
    .works01-sec3 .item .image img { width: 4.78rem; }

}


@media screen and (min-width: 1024px) {

}


@media screen and (min-width: 768px) and (max-width: 1450px) {

    #header { padding: 0 0.1rem; }
    #header .menu ul.parent { gap: 0.15rem; }
    #header .menu ul.parent > li > a { font-size: 0.16rem; }

    .home-service-items { gap: 0.2665rem; }
    .home-service-item .image .category { font-size: 0.21rem; }
    .home-service-item .text { font-size: 0.1875rem; padding: 0.5rem 0.15rem 1.2rem; }
    .home-service-item .text a.link { font-size: 0.15rem; }
    .home-service-item .text a.link::after { right: 0.15rem; }
    .home-sec3 .section-wrapper { padding-left: 1.5rem; padding-right: 0.5rem; }
    .home-sec9 .section-wrapper { padding: 0 0.5rem; }
    .home-sec9 .section-header { padding: 0; }
    .home-sec9 .section-body { padding: 0; }

    .company-sec3 .section-body .item-header h4 { font-size: 0.3075rem; }
    .company-sec3 .section-body .item-body li { font-size: 0.3375rem; width: 3.5rem; }
    .company-sec3 .section-body .item-body li .alphabet { font-size: 0.465rem; width: 0.8625rem; height: 0.8625rem; }
    .company-sec3 .section-body .item-body li .text span { font-size: 0.18rem; }
}


@media screen and (max-width: 767px) {

    .for_pc { display: none; }

    section { padding: 0.3rem 0; }
    .section-wrapper { padding: 0 0.15rem; }

    .notice-item { padding: 0.3rem 0; }
    .notice-item:first-child { padding-top: 0; }
    .notice-item:last-child { padding-bottom: 0; }
    .notice-item .item-header .date { font-size: 0.19rem; }
    .notice-item .item-header .category { font-size: 0.12rem; padding: 0.005rem 0.05rem; }
    .notice-item .item-body h3 { font-size: 0.15rem; margin: 0.05rem 0; }
    .notice-item .item-body p { font-size: 0.12rem; }

    .blog-item { padding: 0.15rem; }
    .blog-item:not(:last-child) { margin-bottom: 0.1rem; }
    .blog-item .image { height: 1.85rem; margin-bottom: 0.2rem; }
    .blog-item .text-header { font-size: 0.12rem; }
    .blog-item .text-body h3 { font-size: 0.15rem; margin: 0.1rem 0; }
    .blog-item .text-body p { font-size: 0.125rem; }

    .cases-item { position: relative; margin-bottom: 0.1rem; }
    .cases-item .image { height: 2.07rem; }
    .cases-item .image .category { display: flex; justify-content: center; align-items: center; text-align: left; font-size: 0.175rem; line-height: 1.2; padding: 0.1rem; bottom: -0.125rem; }
    .cases-item .text { padding: 0.3rem 0.15rem 0.8rem; }
    .cases-item .text h3 { font-size: 0.14rem; margin-bottom: 0.1rem; }
    .cases-item .text p { font-size: 0.14rem; }
    .cases-item .text a.link { position: absolute; left: 0.3rem; right: 0.3rem; bottom: 0.2rem; font-size: 0.14rem; padding: 0.1rem; }
    .cases-item .text a.link::after { right: 0.2rem; }

    .post-pagination { gap: 0.05rem; margin: 0.5rem 0; }
    .post-pagination .page-numbers { font-size: 0.16rem; width: 0.27rem; height: 0.25rem;  }

    .post-single .box { padding: 0.15rem; }
    .post-single .box-header .post-attribute { display: flex; align-items: center; gap: 0.1rem; margin-bottom: 0.1rem; }
    .post-single .box-header .post-attribute .date { font-size: 0.15rem; }
    .post-single .box-header .post-attribute .category { font-size: 0.1rem; padding: 0 0.05rem; }
    .post-single .box-header h3 { font-size: 0.17rem; margin-bottom: 0.15rem; }
    .post-single .box-body p { font-size: 0.14rem; }
    .post-single .box-body .thumbnail { margin-bottom: 0.15rem; }
    .post-single .box-body .wp-block-button { display: block; width: 100%; }
    .post-single .box-body .wp-block-button__link { display: block; width: 100%; font-size: 0.175rem; padding: 0.1rem; margin: 0.15rem 0; }

    .post-single-navigation { margin: 0.2rem 0; padding-bottom: 0.5rem; }
    .post-single-navigation .prev-link a { font-size: 0.13rem; }
    .post-single-navigation .next-link a { font-size: 0.13rem; }
    .post-single-navigation .back-link { position: absolute; left: 0; right: 0; bottom: 0; margin: auto; }
    .post-single-navigation .back-link a { font-size: 0.15rem; padding: 0.1rem 0.2rem; }

    #page { padding-top: 0.63rem; }

    #header { position: fixed; left: 0; right: 0; top: 0; height: 0.63rem; z-index: 1000; display: flex; justify-content: space-between; background: #ececec; }
    #header .logo { flex: 1; display: flex; align-items: center; padding: 0 0.15rem; }
    #header .logo img { width: 2.0rem; max-width: 100%; }
    #header .menu ul.parent { position: fixed; left: 0; right: 0; top: 0.63rem; max-height: calc(100% - 0.63rem); background: #fff; padding: 0.3rem; overflow: auto; display: none; }
    #header .menu ul.parent > li { padding: 0.1rem; }
    #header .menu ul.parent > li:not(:last-child) { border-bottom: 1px solid #e8000c; }
    #header .menu ul.parent > li > a { display: block; position: relative; font-size: 0.2rem; }
    #header .menu ul.parent > li:not(.has-submenu) > a::after { content: ""; display: block; position: absolute; right: 0.1rem; top: 0; bottom: 0; width: 0.06rem; height: 0.06rem; margin: auto; border-top: 1px solid #000; border-right: 1px solid #000; transform: rotate(45deg); }
    #header .menu ul.parent > li.has-submenu > a::before { content: ""; display: block; position: absolute; right: 0.1rem; top: 0; bottom: 0; width: 0.1rem; height: 1px; margin: auto; background: #000; transform: translateX(0.03rem); }
    #header .menu ul.parent > li.has-submenu > a::after { content: ""; display: block; position: absolute; right: 0.15rem; top: 0; bottom: 0; width: 1px; height: 0.1rem; margin: auto; background: #000; transform: translateX(0.03rem); }
    #header .menu ul.parent > li.has-submenu.show-submenu > a::after { content: none; }
    #header .menu ul.sub { padding: 0.1rem 0; display: none; }
    #header .menu ul.sub > li { padding: 0.05rem 0; }
    #header .menu ul.sub > li > a { display: block; position: relative; font-size: 0.15rem; padding-left: 0.2rem; }
    #header .menu ul.sub > li > a::before { content: ""; display: block; position: absolute; left: 0; top: 0; bottom: 0; width: 0.1rem; height: 1px; margin: auto; background: #bcbcbc; }
    #header .menu-button { position: relative; display: block; width: 0.65rem; height: 100%; background: #3621d4; }
    #header .menu-button .mark { display: block; position: absolute; left: 0; right: 0; top: 0.15rem; width: 0.2rem; height: 0.16rem; margin: auto; }
    #header .menu-button .mark .line1 { display: block; position: absolute; left: 0; right: 0; top: 0; width: 100%; height: 1px; margin: auto; background: #fff; transition: all 0.5s; }
    #header .menu-button .mark .line2 { display: block; position: absolute; left: 0; right: 0; top: 0; bottom: 0; width: 100%; height: 1px; margin: auto; background: #fff; transition: all 0.5s; }
    #header .menu-button .mark .line3 { display: block; position: absolute; left: 0; right: 0; bottom: 0; width: 100%; height: 1px; margin: auto; background: #fff; transition: all 0.5s; }
    #header .menu-button .text { display: block; position: absolute; left: 0; right: 0; bottom: 0.1rem; color: #fff; font-size: 0.14rem; font-weight: bold; text-align: center; }
    #header .menu.show-sp-menu .menu-button .text-open { display: none; }
    #header .menu:not(.show-sp-menu) .menu-button .text-close { display: none; }
    #header .menu.show-sp-menu .menu-button .mark .line1 { transform: translate(0, 0.08rem) rotate(45deg); }
    #header .menu.show-sp-menu .menu-button .mark .line2 { opacity: 0; }
    #header .menu.show-sp-menu .menu-button .mark .line3 { transform: translate(0, -0.08rem) rotate(-45deg); }

    #footer .footer-cta .box { padding: 0.35rem 0.15rem; }
    #footer .footer-cta h2 { margin-bottom: 0.2rem; }
    #footer .footer-cta h2 img { width: 2.0605rem; }
    #footer .footer-cta .item { max-width: 2.695rem; min-height: 0.59rem; margin: auto; }
    #footer .footer-cta .item:not(:last-child) { margin-bottom: 0.15rem; }
    #footer .footer-cta .item-mail .mail { font-size: 0.205rem; }
    #footer .footer-cta .item-mail .mail::before { left: -0.275rem; top: 0; bottom: 0; width: 0.215rem; height: 0.16rem; }
    #footer .footer-cta .item-tel .tel { font-size: 0.22rem; line-height: 1.0; }
    #footer .footer-cta .item-tel .tel::before { left: -0.175rem; top: 0; bottom: 0; width: 0.135rem; height: 0.14rem; }
    #footer .footer-cta .item-tel .tel span { font-size: 0.15rem; margin-right: 0.05rem; }
    #footer .footer-cta .item-tel .hour { font-size: 0.08rem; text-align: right; }
    #footer .footer-menu { padding: 0.3rem 0.15rem; }
    #footer .footer-menu .logo { margin-bottom: 0.3rem; }
    #footer .footer-menu .logo .image { margin-bottom: 0.05rem; }
    #footer .footer-menu .logo .image img { width: 1.64rem; }
    #footer .footer-menu .logo .address p { font-size: 0.13rem; }
    #footer .footer-menu .logo .address p span { font-size: 0.11rem; }
    #footer .footer-menu .menu { display: flex; gap: 0.6rem; }
    #footer .footer-menu .menu a { font-size: 0.14rem; }
    #footer .footer-menu .menu .items { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.1rem 0.2rem; }
    #footer .footer-menu .menu .item a { position: relative; font-size: 0.13rem; }
    #footer .footer-menu .menu .item a::after { content: ""; display: block; position: absolute; right: -0.1rem; top: 0; bottom: 0; width: 0.06rem; height: 0.06rem; margin: auto; border-top: 1px solid #4e575b; border-right: 1px solid #4e575b; transform: rotate(45deg); }
    #footer .footer-menu .menu .item-empty-pc { display: none; }
    #footer .footer-copyright { display: flex; flex-direction: column-reverse; gap: 0.1rem; text-align: center; padding: 0.3rem 0.15rem; }
    #footer .footer-copyright .copyright { font-size: 0.1rem; }
    #footer .footer-copyright .description { font-size: 0.1rem; }

    #home-banner { right: 0.2rem; bottom: 0.2rem; }
    #home-banner img { width: 2.18rem; }

    .page-header { padding: 0.2rem 0; }
    .page-header::before { width: auto; height: 100%; aspect-ratio: 1; }
    .page-header .breadcrumb { display: none; }
    .page-header .page-title { padding-left: 0.2rem; }
    .page-header .page-title h2 { font-size: 0.32rem; }
    .page-header .page-title-question .image img { width: 2.64rem; }
    .page-header .page-title-notice .image img { width: 1.555rem; }
    .page-header .page-title-blog .image img { width: 1.285rem; }
    .page-header .page-title-company .image img { width: 2.94rem; }
    .page-header .page-title-opinion .image img { width: 1.8rem; }
    .page-header .page-title-staff .image img { width: 1.36rem; }
    .page-header .page-title-cases .image img { width: 1.5rem; }

    .question-sec1 .item { padding: 0.2rem 0.15rem; }
    .question-sec1 .item:not(:last-child) { margin-bottom: 0.1rem; }
    .question-sec1 .item h2 { font-size: 0.175rem; padding-left: 0.4rem; padding-top: 0.025rem; margin-bottom: 0.1rem; }
    .question-sec1 .item h2::before { font-size: 0.17rem; width: 0.3rem; height: 0.3rem; border-radius: 0.15rem; }
    .question-sec1 .item p { font-size: 0.16rem; padding-left: 0.4rem; padding-top: 0.05rem; }
    .question-sec1 .item p::before { font-size: 0.17rem; width: 0.3rem; height: 0.3rem; border-radius: 0.15rem; }

    .contact-sec1 .contact-form { padding: 0.2rem 0.2rem 0.25rem; }
    .contact-sec1 .contact-form h3 { font-size: 0.175rem; padding: 0.1rem 0.2rem; margin-bottom: 0.15rem; }
    .contact-sec1 .contact-form dl { margin-bottom: 0.15rem; }
    .contact-sec1 .contact-form dt { position: relative; display: flex; align-items: center; gap: 0.05rem; font-size: 0.13rem; padding-top: 0.15rem; border-top: 1px solid #c6c6c6; margin-bottom: 0.1rem; }
    .contact-sec1 .contact-form dt.required::after { font-size: 0.07rem; padding: 0.005rem 0.025rem; }
    .contact-sec1 .contact-form dd { padding-bottom: 0.15rem; }
    .contact-sec1 .contact-form dd.name { gap: 0.15rem; }
    .contact-sec1 .contact-form dd.name label { font-size: 0.125rem; }
    .contact-sec1 .contact-form dd.name p { gap: 0.1rem; }
    .contact-sec1 .contact-form .privacy .box { height: 1.4rem; padding: 0.2rem; }
    .contact-sec1 .contact-form .privacy .box h4 { font-size: 0.125rem; border-width: 0.025rem; }
    .contact-sec1 .contact-form .privacy .box h5 { font-size: 0.105rem; }
    .contact-sec1 .contact-form .privacy .box p { font-size: 0.1rem; }
    .contact-sec1 .contact-form .privacy .box ul { font-size: 0.1rem; }
    .contact-sec1 .contact-form .privacy .input { font-size: 0.1rem; margin: 0.15rem 0; }
    .contact-sec1 .contact-form :is(input[type="text"], input[type="email"], textarea) { font-size: 0.125rem; }
    .contact-sec1 .contact-form textarea { height: 2.0rem; }
    .contact-sec1 .contact-form input[type="submit"] { font-size: 0.175rem; padding: 0.1rem; width: 100%; }
    .contact-sec1 .contact-form .wpcf7-not-valid-tip { font-size: 0.125rem; }

    .success-sec1 .section-body .box { padding: 0.3rem; }
    .success-sec1 .section-body .box h3 { font-size: 0.175rem; margin-bottom: 0.3rem; }
    .success-sec1 .section-body .box p { font-size: 0.125rem; }
    .success-sec1 .section-footer { margin: 0.3rem 0; }
    .success-sec1 .section-footer a { font-size: 0.175rem; padding: 0.1rem; width: 100%; }

    .company-section-title { font-size: 0.225rem; }
    .company-section-title span { display: block; padding: 0.05rem 0.1rem; }
    .company-sec1 h3 { font-size: 0.225rem; }
    .company-sec1 p { font-size: 0.125rem; }
    .company-sec1 p em { font-size: 0.15rem; }
    .company-sec2 .image { text-align: center; margin-bottom: 0.1rem; }
    .company-sec2 .image img { width: 2.68rem; }
    .company-sec2 .text p { font-size: 0.125rem; }
    .company-sec2 .text .sign .position { font-size: 0.1rem; }
    .company-sec2 .text .sign .name { font-size: 0.215rem; }
    .company-sec3 .section-header { margin-bottom: 0.5rem; }
    .company-sec3 .section-header p { font-size: 0.125rem; }
    .company-sec3 .section-body .item { padding-top: 0.3rem; }
    .company-sec3 .section-body .item:not(:last-child) { margin-bottom: 0.35rem; }
    .company-sec3 .section-body .item-header { max-width: 2.83rem; margin: auto; border-radius: 0.06rem; padding: 0.1rem; }
    .company-sec3 .section-body .item-header h4 { font-size: 0.175rem; }
    .company-sec3 .section-body .item-header::before { top: -0.25rem; width: 0.6rem; height: 0.6rem; }
    .company-sec3 .section-body .item-header::after { top: -0.2rem; width: 0.365rem; height: 0.245rem; }
    .company-sec3 .section-body .item-body { border-radius: 0.06rem; padding: 0.4rem 0.1rem 0.3rem; }
    .company-sec3 .section-body .item-body li { font-size: 0.15rem; gap: 0.1rem; width: 2.0rem; }
    .company-sec3 .section-body .item-body li .alphabet { font-size: 0.24rem; width: 0.45rem; height: 0.45rem; border-radius: 0.225rem; }
    .company-sec3 .section-body .item-body li .text { line-height: 1.2; }
        .company-sec3 .section-body .item-body li .text span { font-size: 0.115rem; }
    .company-sec3 .section-body .item-body li:not(:last-child) { margin-bottom: 0.05rem; }
    .company-sec4 .section-body :is(th, td) { padding: 0.15rem 0; }
    .company-sec4 .section-body th { font-size: 0.15rem; padding-right: 0.15rem; }
    .company-sec4 .section-body td { font-size: 0.125rem; }
    .company-sec5 .iframe-inner { height: 3.0rem; padding: 0; }

    .opinion-section-title { font-size: 0.225rem; }
    .opinion-section-title span { display: block; padding: 0.01rem 0.1rem; }
    .opinion-sec1 .item { padding: 0.15rem; }
    .opinion-sec1 .item:not(:last-child) { margin-bottom: 0.15rem; }
    .opinion-sec1 .item .image .name { font-size: 0.125rem; padding: 0.05rem; min-width: 1.1rem; }
    .opinion-sec1 .item .text .text-header { font-size: 0.12rem; margin: 0.1rem 0; }
    .opinion-sec1 .item .text .text-body { font-size: 0.14rem; }
    .opinion-sec2 .section-body .item:not(:last-child) { margin-bottom: 0.175rem; }
    .opinion-sec2 .section-body .item .image { height: 3.13rem; }
    .opinion-sec2 .section-body .item .image img { width: calc(570 / 685 * 100%); }
    .opinion-sec2 .section-body .item .image .category { font-size: 0.175rem; padding: 0.05rem; min-width: 1.64rem; bottom: -0.15rem; }
    .opinion-sec2 .section-body .item .text { font-size: 0.14rem; padding: 0.25rem 0.2rem 0.2rem; }
    .opinion-sec2 .section-footer { margin: 0.25rem 0; }
    .opinion-sec2 .section-footer a { font-size: 0.175rem; padding: 0.1rem; min-width: 3.1rem; max-width: 100%; }

    .staff-sec1 .section-header p { font-size: 0.15rem; }
    .staff-sec1 .section-header p small { font-size: 0.125rem; }
    .staff-sec1 .section-body h3 { font-size: 0.225rem; border-width: 0.025rem; }
    .staff-sec1 .section-body h3:not(:first-child) { margin-top: 0.1rem; }
    .staff-sec1 .section-body .item { padding: 0.25rem 0; }
    .staff-sec1 .section-body .item-header h4 { font-size: 0.175rem; padding: 0.05rem 0.1rem; margin-bottom: 0.1rem; }
    .staff-sec1 .section-body .item-body .image { margin-bottom: 0.1rem; }
    .staff-sec1 .section-body .item-body .text h5 { font-size: 0.15rem; margin: 0.1rem 0; }
    .staff-sec1 .section-body .item-body .text .name { font-size: 0.175rem; }
    .staff-sec1 .section-body .item-body .text .name span { font-size: 0.125rem; }
    .staff-sec1 .section-body .item-body .text p { font-size: 0.125rem; }

    .home-button { max-width: 3.0rem; margin: 0 auto 0.07rem; }
    .home-button a { font-size: 0.175rem; padding: 0.15rem; }
    .home-service-item { position: relative; }
    .home-service-item .image { height: 2.06rem; }
    .home-service-item .image .category { display: flex; justify-content: center; align-items: center; text-align: left; font-size: 0.175rem; line-height: 1.2; padding: 0.1rem; bottom: -0.125rem; min-width: 1.6rem; }
    .home-service-item .text { font-size: 0.14rem; padding: 0.3rem 0.15rem 0.8rem; }
    .home-service-item .text a.link { position: absolute; left: 0.3rem; right: 0.3rem; bottom: 0.2rem; font-size: 0.14rem; padding: 0.1rem; }
    .home-service-item .text a.link::after { right: 0.2rem; }
    .home-service-slider .splide__pagination { bottom: -0.3rem; }
    .home-service-slider .splide__pagination__page.is-active { background: #000; }
    .home-service-slider .splide__arrow { background: none; opacity: 1; top: 60%; }
    .home-service-slider .splide__arrow--prev { left: -0.15rem; }
    .home-service-slider .splide__arrow--next { right: -0.15rem; }
    .home-service-slider .splide__arrow svg { fill: #fff; width: 0.25rem; height: 0.25rem; }
    .home-sec1 { padding: 0.15rem 0 0; }
    .home-sec1 .section-wrapper { padding: 0; }
    .home-sec1 .eyecatch img { display: block; }
    .home-sec2 { background-position: left top; padding-top: 0.15rem; }
    .home-sec2 .box { margin-right: -0.15rem; padding: 0.25rem 0.15rem 0.3rem 0.25rem; }
    .home-sec2 .box-body .title img { width: 1.955rem; }
    .home-sec2 .box-body h2 { font-size: 0.265rem; margin: 0 0 0.1rem; }
    .home-sec2 .box-body p { font-size: 0.14rem; }
    .home-sec2 .box-body .icons { justify-content: center; gap: 0.075rem; margin-bottom: 0.3rem; }
    .home-sec2 .box-body .icons img { width: 1.005rem; }
    .home-sec3 { background-position: left -0.75rem top; padding-bottom: 0.5rem; }
    .home-sec3 .section-header { margin-bottom: 0.2rem; padding-top: 0.3rem; }
    .home-sec3 .section-header .title { margin-left: 0.1rem; }
    .home-sec3 .section-header .title img { width: 1.7rem; }
    .home-sec3 .section-header h2 { font-size: 0.265rem; margin-left: 0.1rem; margin-bottom: 0.1rem; }
    .home-sec3 .section-header p { font-size: 0.15rem; }
    .home-sec3 .section-header p span { font-size: 0.175rem; margin: 0 0.2rem 0.05rem; }
    .home-sec3 .section-header p span::before { width: 0.2rem; left: -0.2rem; }
    .home-sec3 .section-header p span::after { width: 0.2rem; right: -0.2rem; }
    .home-sec4 { padding-top: 0; }
    .home-sec4 .box { margin: 0 -0.15rem; padding: 0.35rem 0.15rem; }
    .home-sec4 .box-header h2 { font-size: 0.175rem; }
    .home-sec4 .box-header h2 em { font-size: 0.265rem; padding: 0 0.1rem; }
    .home-sec4 .box-header h2 em small { font-size: 100%; }
    .home-sec4 .box-body { margin: 0.15rem 0 0.3rem; }
    .home-sec4 .box-footer h3 { font-size: 0.225rem; margin-bottom: 0.1rem; }
    .home-sec4 .box-footer h3 em { padding: 0 0.1rem; }
    .home-sec4 .box-footer h3 small { font-size: 0.14rem; }
    .home-sec4 .box-footer p { font-size: 0.14rem; text-align: left; }
    .home-sec5 { padding-top: 0; padding-bottom: 0.5rem; }
    .home-sec5 .section-header { margin-bottom: 0.1rem; }
    .home-sec5 .section-header .title img { width: 3.0rem; }
    .home-sec5 .section-header h2 { font-size: 0.265rem; }
    .home-sec5 .home-service-slider .splide__arrow svg { fill: #78828f; }
    .home-sec6 { background: #402cd6; padding-bottom: 0; }
    .home-sec6 .section-header .title img { width: 1.15rem; }
    .home-sec6 .section-header h2 { font-size: 0.265rem; }
    .home-sec6 .section-body .box { padding: 0.3rem 0.15rem; margin-right: -0.15rem; }
    .home-sec6 .section-body a.item { padding: 0.15rem 0; }
    .home-sec6 .section-body a.item .date { font-size: 0.12rem; }
    .home-sec6 .section-body a.item h3 { font-size: 0.14rem; }
    .home-sec6 .section-body .home-button { margin: 0.15rem auto; }
    .home-sec6 .section-footer { margin: 0 -0.15rem; }
    .home-sec7 { padding-top: 0; }
    .home-sec7 .section-wrapper { padding: 0; }
    .home-sec7 .section-header { background: #e8000c; padding: 0.3rem 0.15rem 0; }
    .home-sec7 .section-header .title img { width: 1.14rem; }
    .home-sec7 .section-body { background: #e8000c; padding: 0 0.15rem; }
    .home-sec7 .section-body h2 { font-size: 0.265rem; }
    .home-sec7 .section-body p { font-size: 0.15rem; line-height: 2.0; }
    .home-sec7 .section-body .bg { margin: 0 -0.15rem; }
    .home-sec7 .section-footer { margin: 0.3rem 0; }
    .home-sec8 { position: relative; background: url("./images/home-sec8-bg-sp.png") no-repeat top; background-size: cover; padding: 0.5rem 0 3.0rem; margin-bottom: 1.4rem; }
    .home-sec8::before { content: ""; display: block; position: absolute; z-index: 10; left: 0; right: 0; bottom: 0; height: 3.32rem; background: url("./images/home-sec8-img01-sp.png") no-repeat center; background-size: contain; }
    .home-sec8 .box { margin-right: -0.15rem; padding: 0 0.15rem 0.6rem; }
    .home-sec8 .box-header { padding-top: 0.3rem; }
    .home-sec8 .box-header .title img { width: 1.35rem; }
    .home-sec8 .box-header h2 { font-size: 0.265rem; }
    .home-sec8 .box-header p { font-size: 0.15rem; }
    .home-sec8 .box-body .item { padding: 0.15rem 0; }
    .home-sec8 .box-body .item p { font-size: 0.14rem; }
    .home-sec8 .box-body .item .name { font-size: 0.105rem; }
    .home-sec8 .box-footer { position: absolute; left: 0; right: 0; bottom: -3.8rem; }
    .home-sec9 { background: url("./images/home-sec9-bg-sp.png") no-repeat top; background-size: cover; padding-bottom: 0.5rem; }
    .home-sec9 .section-header { margin-bottom: 0.15rem; padding-top: 0.6rem; }
    .home-sec9 .section-header .title img { width: 2.07rem; }
    .home-sec9 .section-header h2 { font-size: 0.265rem; }
    .home-sec9 .section-body { margin-bottom: 0.2rem; }
    .home-sec9 .section-body .item { margin-bottom: 0.1rem; }
    .home-sec9 .section-body .item .item-content p { font-size: 0.125rem; padding: 0.1rem 0.4rem 0.1rem 0.4rem; }
    .home-sec9 .section-body .item .item-content .sign { font-size: 0.19rem; left: 0.1rem; top: 0.05rem; }
    .home-sec9 .section-body .item .item-content .button { width: 0.15rem; height: 0.15rem; right: 0.15rem; }

    .works01-sec1 h3 { font-size: 0.265rem; }
    .works01-sec1 h3 span { display: block; padding: 0.05rem 0.1rem; }
    .works01-sec1 p { font-size: 0.175rem; }
    .works01-sec1 p span { padding: 0.05rem 0.25rem; }
    .works01-sec1 p span::after { width: 0.2rem; right: -0.19rem; }
    .works01-sec1 .image { margin: 0.25rem 0; }
    .works01-sec2 { padding: 0.3rem 0; }
    .works01-sec2 .item:not(:last-child) { margin-bottom: 0.3rem; }
    .works01-sec2 .item:not(:last-child)::after { width: 0.77rem; height: 0.2rem; bottom: -0.13rem; background: #ffd2d2; }
    .works01-sec2 .item-header { position: relative; height: 0.4rem; }
    .works01-sec2 .item-header img { position: absolute; left: 0; right: 0; bottom: 0.07rem; margin: auto; width: 0.905rem; }
    .works01-sec2 .item-body { padding: 0.15rem 0.15rem 0.3rem; }
    .works01-sec2 .item-body h3 { font-size: 0.175rem; text-align: center; margin-bottom: 0.1rem; }
    .works01-sec2 .item-body p { font-size: 0.14rem; }
    .works01-sec3 .item { position: relative; padding: 0.15rem 0; }
    .works01-sec3 .item .text h3 { position: absolute; left: 0; top: 0.15rem; font-size: 0.175rem; margin-bottom: 0.1rem; }
    .works01-sec3 .item .text h3 span { padding: 0.05rem 0.2rem; }
    .works01-sec3 .item .text p { font-size: 0.14rem; }
    .works01-sec3 .item .image { padding-top: 0.5rem; margin-bottom: 0.1rem; }

}
