.l-noticeDate {
    background: #F0441A;
    text-align: center;
    padding: 12px 10px;
}

.l-noticeDate .date {
    background: #FEF251;
    border-radius: 4px;
    font-size: 1.9rem;
    font-weight: bold;
    padding: 0.25px 8px;
    display: inline-block;
    line-height: 1.5;
    margin-bottom: 10px;
}

.l-noticeDate p {
    color: #fff;
    font-weight: bold;
    font-size: 2rem;
}

.l-subsidyContent {
    background: #F6F7F7;
    padding: 45px 0 50px;
}

.subsidy-intro .title {
    text-align: center;
    font-weight: bold;
    font-size: 2.8rem;
    margin-bottom: 40px;
}

.subsidy-intro .title span {
    position: relative;
    padding:0 25px;
    display:inline-block;
}

.subsidy-intro .title span:before,
.subsidy-intro .title span:after
{
    content: '';
    width: 20px;
    height: 30px;
    background-image:url(https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/lp4-v4/icon-decoration.png);
    background-size:contain;
    background-position:center;
    background-repeat:no-repeat;
    position:absolute;
    top:5px;
}

.subsidy-intro .title span:before {
    left:0;
}

.subsidy-intro .title span:after{
    right:0;
    transform:scaleX(-1);
}

.subsidy-intro .list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 15px;
}

.subsidy-intro .list__item {
    width: calc(25% - 11.5px);
    border-radius: 10px;
    box-shadow: 5px 10px 10px rgba(0, 0, 0, .06);
    background: #fff;
    padding: 17px 15px 20px;
}

.subsidy-intro .list__item .icon {
    height: 82px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-bottom: 12px;
}

.subsidy-intro .list__item .icon img {/* width: 100%; */height: 100%;object-fit: contain;object-position: bottom;}

div#item2.list__item .icon img {
    width: 82px;
}

div#item3.list__item .icon img {
    width: 82px;
}

div#item4.list__item .icon img {
    width: 72.33px;
}

div#item5.list__item .icon img {
    width: 53.59px;
}

div#item6.list__item .icon img {
    width: 82px;
}

div#item7.list__item .icon img {
    width: 76px;
}

div#item8.list__item .icon img {
    width: 75px;
}

.subsidy-intro .list__item .ttl {
    text-align: center;
    font-size: 1.7rem;
    font-weight: bold;
    line-height: calc(48/34);
    margin-bottom: 14px;
}

.subsidy-intro .list__item p {
    font-size: 13px;
    font-weight: 500;
    line-height: calc(43.2/24);
}

.subsidy-box {
    margin-top: 50px;
    background: #F0441A;
    border-radius: 10px;
}

.subsidy-box .heading {
    text-align: center;
    font-size: 2.8rem;
    color: #fff;
    padding: 20px;
    margin: 0;
}

.subsidy-box .box1 {
    background: #fff;
    border-left: 1px solid #DDDDDD;
    border-right: 1px solid #DDDDDD;
    padding: 40px 17.5px 50px;
    display: flex;
    justify-content: space-between;
    gap: 0 35px;
}

.subsidy-box .box1__item {
    flex: 1;
}

.subsidy-box .box1__item .ttl {
    text-align: center;
    font-size: 2.5rem;
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 30px;
}

.subsidy-box .box1__item .ttl:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 62px;
    height: 4px;
    background: #F0441A;
    margin: 0 auto;
    right: 0;
}

.subsidy-box .circle {
    background: #FFFFFF;
    border: 5px solid #F0441A;
    border-radius: 10px;
    margin-top: 93px;
}

.subsidy-box .circle__head {
    width: 86.44%;
    background: #F0441A;
    color: #fff;
    border-radius: 120px;
    text-align: center;
    font-weight: bold;
    padding: 13px 0;
    margin: 0 auto -68.5px;
    transform: translateY(-50%);
}

.subsidy-box .circle__head .p1 {
    font-size: 2.25rem;
    line-height: calc(56/45);
    margin-bottom: 3px;
}

.subsidy-box .circle__head .p1 small {
    font-size: 1.75rem;
}

.subsidy-box .num-wrap .num {
    font-family: 'DIN 2014';
    font-weight: bold;
    line-height: 1;
}

.subsidy-box .circle__head .num {
    font-size: 7.25rem;
}

.subsidy-box .circle__head .num-wrap small {
    font-size: 3.75rem;
}

.subsidy-box .num-wrap .num small {
    line-height: 1;
}

.subsidy-box .num-wrap {
    line-height: 1;
}

.subsidy-box .num-wrap {
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.subsidy-box .num-wrap #num1 {
    max-width: 97.5px;
    margin-right: 5px;
}

.subsidy-box .num-wrap #num2 {
    max-width: 90.5px;
}

.subsidy-box .num-wrap #num3 {
    max-width: 86px;
}

.circle__box__item {
    background: #FEF251;
    flex: 1;
    padding: 36px 10px;
}

.circle__box {
    display: flex;
    justify-content: center;
    gap: 0 8.5px;
}

.circle__box__item p {
    text-align: center;
    font-size: 2.7rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 14px;
}

.circle__box__item .num-wrap #num2 + small {
    font-size: 3.4rem;
    font-weight: bold;
    margin-left: 3px;
}

.circle__box {
    padding: 20px 17px 30px;
}

.subsidy-box .box1__item > p {
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 1.7;
    margin-top: 30px;
}

.subsidy-box .box1__item .table th {
    background: #FFCCBE;
    width: 178px;
}

.subsidy-box .box1__item .table tr {
    border: 1px solid #000;
}

.subsidy-box .box1__item .table th, .subsidy-box .box1__item .table td {
    height: 75px;
    font-size: 1.4rem;
    font-weight: bold;
    padding: 0 23px;
}

.subsidy-box .box1__item .table .label {
    background: #333;
    color: #fff;
    display: inline-block;
    border-radius: 4px;
    padding: .55px 7.5px;
    margin-left: 8px;
}

.subsidy-box .box1__item .table .label--green {
    background: #13AF37;
}

.subsidy-box .box2 {
    padding: 27px 17.5px 29px;
    /* display: flex; */
}

.subsidy-box .box2 .point {
    display: flex;
    justify-content: space-between;
    gap: 0 7.5px;
}

.subsidy-box .box2 .point__item {
    flex: 1;
    background: #fff;
    border-radius: 10px;
    text-align: center;
    padding: 25px 13.5px 24px;
}

.subsidy-box .box2 .point__item p {
    text-align: left;
    font-weight: bold;
    font-size: 1.5rem;
    line-height: 1.7;
    margin-bottom: 25px;
}

.subsidy-box .box2 .point .num {
    display: block;
    max-width: 120px;
    margin: 0 auto 23px;
    line-height: 1;
}

.subsidy-box .box2 .point .ttl {
    font-size: 2.4rem;
    line-height: calc(66/48);
    color: #F0441A;
    margin-bottom: 15px;
}

.subsidy-box .box2 .point__item .image {
    max-width: calc(351px/2);
    margin: 0 auto;
}

.l-appFlow {
    background: #293A53;
    color: #fff;
    padding: 45px 0;
}

.l-appFlow .title {
    text-align: center;
    margin: 0;
    font-size: 2.8rem;
    margin-bottom: 20px;
}

.l-appFlow .intro p {
    text-align: center;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.7;
}

.l-appFlow .intro {
    margin-bottom: 36px;
}

.l-appFlow .flow {}

.l-appFlow .flow {
    display: flex;
    gap: 0 15px;
    color: #333;
}

.l-appFlow .flow__item {
    flex: 1;
    /* background: #fff; */
    /* border-radius: 10px; */
}

.l-appFlow .flow__box {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
}

.l-appFlow .flow__box .num {
    background: #FEF251;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 38px;
}

.l-appFlow .flow__box .num img {
    height: 16px;
}

.l-appFlow .flow__box .content {
    padding: 10px 10px 15px;
    text-align: center;
    min-height: 207px;
}

.l-appFlow #flow1 .icon img {
    width: calc(153.73px/2);
}

.l-appFlow .flow__box .icon img {
    height: 100%;
    object-fit: contain;
}

.l-appFlow .flow__box .icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.l-appFlow #flow2 .icon img {
    width: calc(196.51px/2);
    object-position: top;
}

.l-appFlow .flow__box .icon {
    height: 120px;
    margin-bottom: 10px;
}

.l-appFlow #flow4 .icon img {
    width: calc(262px/2);
    object-position: bottom;
}

.l-appFlow .flow__box .ttl-wrap{
    min-height: 61px;
    display:flex;
    align-items: center;
    justify-content: center;
}

.l-appFlow .flow__box .ttl {
    font-size: 2.2rem;
    line-height: calc(60/44);
    font-weight: bold;
    
}

.l-appFlow .flow__box .ttl .red {
    color: #CE222A;
}

.flow__desc {
    color: #fff;
    font-size: 1.8rem;
    line-height: 1.7;
    font-weight: bold;
    margin-top: 18px;
}

@media screen and (max-width: 768px) {
    
    .l-subsidyContent {
        padding: 40px 0;
    }
    
    .l-noticeDate .date {
        font-size: 1.4rem;
        margin-bottom: 5px;
    }
    
    .l-noticeDate p {
        font-size: 1.6rem;
    }
    
    .l-noticeDate {
        padding: 10px;
    }
    
    .subsidy-intro .title {
        font-size: 2.2rem;
        margin-bottom: 30px;
    }
    
    .subsidy-intro .title span:before, .subsidy-intro .title span:after {
        width: 15px;
        height: 25px;
    }
    
    .subsidy-intro .title span {
        padding: 0 20px;
    }
    
    .subsidy-intro .list__item {
        width: calc(50% - 5px);
        padding: 15px 10px;
    }
    
    .subsidy-intro .list {
        gap: 20px 10px;
    }
    
    .subsidy-intro .list__item .icon {
        height: 60px;
    }
    
    div#item2.list__item .icon img {
        width: 60px;
    }
    
    div#item3.list__item .icon img {
        width: 60px;
    }
    
    div#item4.list__item .icon img {
        width: 54px;
    }
    
    div#item6.list__item .icon img {
        width: 60px;
    }
    
    div#item7.list__item .icon img {
        width: 55px;
    }
    
    div#item8.list__item .icon img {
        width: 55px;
    }
    
    .subsidy-intro .list__item .ttl {
        font-size: 1.5rem;
        margin-bottom: 10px;
    }
    
    .subsidy-box {
        margin-top: 40px;
        border-radius: 5px;
    }
    
    .subsidy-box .heading {
        font-size: 2.2rem;
        padding: 12px 10px;
    }
    
    .subsidy-box .box1 {
        display: block;
        padding: 35px 15px 40px;
    }
    
    .subsidy-box .box1__item .ttl {
        font-size: 2rem;
        padding-bottom: 7px;
    }
    
    .subsidy-box .box1__item .ttl:after {
        width: 40px;
        height: 2px;
    }
    
    .subsidy-box .circle__head .p1 {
        font-size: 1.8rem;
    }
    
    .subsidy-box .circle__head .p1 small {
        font-size: 1.4rem;
    }
    
    .subsidy-box .num-wrap #num1 {
        max-width: 62px;
    }
    
    .subsidy-box .circle__head .num-wrap small {
        font-size: 2.4rem;
    }
    
    .subsidy-box .circle__head {
        padding: 10px 0;
        margin-bottom: -50px;
    }
    
    .subsidy-box .circle {
        margin-top: 75px;
    }
    
    .circle__box {
        padding: 20px 15px 25px;
    }
    
    .circle__box__item p {
        font-size: 2rem;
    }
    
    .circle__box__item {
        padding: 25px 10px;
    }
    
    .subsidy-box .num-wrap #num2 {
        max-width: 70px;
    }
    
    .circle__box__item .num-wrap #num2 + small {
        font-size: 2rem;
        flex-shrink: 0;
    }
    
    .subsidy-box .num-wrap #num3 {
        max-width: 65px;
    }
    
    .subsidy-box .box1__item > p {
        margin-top: 20px;
        font-size: 1.3rem;
    }
    
    .subsidy-box .box1__item:not(:last-child) {
        margin-bottom: 35px;
    }
    
    .subsidy-box .box1__item .table th {
        width: 120px;
    }
    
    .subsidy-box .box1__item .table th, .subsidy-box .box1__item .table td {
        font-size: 1.3rem;
        padding: 0 10px;
    }
    
    .subsidy-box .box1__item .table .label {
        margin-left: 0;
        margin-top: 2px;
    }
    
    .subsidy-box .box2 {
        padding: 25px 15px;
    }
    
    .subsidy-box .box2 .point {
        display: block;
    }
    
    .subsidy-box .box2 .point__item:not(:last-child) {
        margin-bottom: 20px;
    }
    
    .subsidy-box .box2 .point__item {
        padding: 20px 10px;
    }
    
    .subsidy-box .box2 .point .num {
        max-width: 100px;
        margin-bottom: 10px;
    }
    
    .subsidy-box .box2 .point .ttl {
        font-size: 1.8rem;
        margin-bottom: 10px;
    }
    
    .subsidy-box .box2 .point__item p {
        margin-bottom: 20px;
    }
    
    .subsidy-box .box2 .point__item .image {
        max-width: 120px;
    }
    
    .l-appFlow {
        padding: 40px 0;
    }
    
    .l-appFlow .title {
        font-size: 2.2rem;
        margin-bottom: 15px;
    }
    
    .l-appFlow .intro p {
        font-size: 1.3rem;
    }
    
    .l-appFlow .flow {
        flex-wrap: wrap;
        gap: 25px 10px;
    }
    
    .l-appFlow .flow__item {
        flex: initial;
        width: calc(50% - 5px);
    }
    
    .l-appFlow .flow__box .num img {
        height: 14px;
    }
    
    .l-appFlow .flow__box .num {
        height: 35px;
    }
    
    .l-appFlow .flow__box {
        border-radius: 5px;
    }
    
    .l-appFlow .flow__box .ttl {
        font-size: 1.7rem;
    }
    
    .l-appFlow .flow__box .content {
        min-height: initial;
    }
    
    .l-appFlow .flow__box .icon {
        height: 80px;
    }
    
    .flow__desc {
        font-size: 1.4rem;
        margin-top: 15px;
    }
    
    .l-appFlow #flow1 .icon img {
        width: 60px;
    }
    
    .l-appFlow #flow2 .icon img {
        width: 80px;
    }
    
    .l-appFlow #flow3 .icon img {
        width: 65px;
    }
    
    .l-appFlow #flow4 .icon img {
        width: 90px;
        object-position: bottom;
    }
    
    .l-appFlow .flow__box .ttl-wrap {
        min-height: 47px;
    }
}

.l-stepform .ttl {
    font-weight: bold;
    font-size: 29px;
    text-align: center;
    color: #fff;
    margin-bottom: 15px;
}

.l-stepform {
    background: #293A53;
    padding-top:70px;
}

.stepform {
    background: #fff;
    max-width: 280px;
    margin:0 auto;
}

.stepform-heading {
    background: #FEF251;
    height: 35px;
    display: flex;
    align-items: center;
    text-align: center;
    position: relative;
}

div#stepform-prev {
    position: absolute;
    width: 19px;
    height: 19px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/lp4-v4/stepform-prev.png);
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}

div#stepform-pagination {
    pointer-events: none;
}

.stepform__content {
    padding: 20px 15px;
}

.stepform-controls {
    padding: 0 15px 20px;
}

.stepform-btn {
    height: 50px;
    width: 227px;
    background: #EF4319;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: bold;
    color: #fff;
    border-radius: 5px;
    position: relative;
    margin: 0 auto;
    cursor: pointer;
}

.stepform-btn:after {
    content: '';
    width: 15px;
    height: 15px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/lp4-v4/stepform-next.png);
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    pointer-events: none;
}

.stepform__heading {
    text-align: center;
    font-weight: bold;
    font-size: 15px;
    line-height: 1.5;
    margin-bottom: 25px;
}

.stepform__heading.stepform__heading--question {
    text-align: left;
    position: relative;
    padding-left: 25px;
    margin-bottom: 15px;
}

.stepform__heading.stepform__heading--question:before {
    content: '';
    width: calc(41px/2);
    height: calc(38px/2);
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(https://shopi-lab.com/wp-content/themes/SP_swblog/assets/img/lp4-v4/letter-q.png);
    position: absolute;
    top: 0;
    left: 0;
}

div#stepform-pagination .swiper-pagination-bullet {
    margin: 0 2.5px;
    width: 5.5px;
    height: 5.5px;
    background:#D6CC46;
    opacity: 1;
}

div#stepform-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background:#293A53;
}

.stepform-fields .mwform-radio-field input,
.stepform-fields .mwform-checkbox-field input
{
    display:none;
}

.stepform-fields .mwform-radio-field-text,
.stepform-fields .mwform-checkbox-field-text
{
    border-radius: 5px;
    background:#EFEFEF;
    display: block;
    text-align: center;
    font-size: 15px;
    line-height: 1.5;
    font-weight: bold;
    padding: 6.25px 0;
    border: 2.5px solid #EFEFEF;
    cursor: pointer;
}

.stepform-fields .mwform-radio-field input:checked~span,
.stepform-fields .mwform-checkbox-field input:checked~span
{
    background: #fff!important;
    color: #EF4319!important;
    border-color: #EF4319!important;
}

.stepform-fields .head {
    font-size: 15px;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 10px;
}

.stepform-fields .head .lbl {
    font-size: 12px;
    width: 35px;
    height: 17.5px;
    background: #EF4319;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    margin-left: 5px;
}

.stepform-fields input[type="text"] {
    height: 40px;
    width: 100%;
    outline: none;
    border: 1px solid #EFEFEF;
    border-radius: 5px;
    font-size: 1.5rem;
    font-weight: bold;
    padding: 0 11px;
    background: #fff;
    text-align: left;
}

.stepform-fields input[type="text"]::placeholder {
    color: #D1D1D1;
}

.stepform-fields .row:not(:last-child) {
    margin-bottom: 17px;
}

.stepform-validate {
    position: relative;
}

.stepform-validateBtn {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-width: 227px;
    right: 0;
    margin: 0 auto;
    cursor: pointer;
}

.stepform-validateBtn[data-validate=true] {
    display: none;
}

div#stepform-prev.swiper-button-disabled {
    display: none;
}

.stepform-submit {
    position: relative;
    display:none;
}

.stepform-submit.is-active{
    display:flex;
}

.stepform-submit input[type="submit"]{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index: 1;
    font-size:0;
    background:transparent;
    outline:none;
    border:none;
}

.stepform-fields .mwform-radio-field-text.is-error {
    border-width: 2.5px!important;
}

.mw_wp_form .stepform-fields.is-error {
    background: transparent!important;
    border: none!important;
    color: inherit!important;
}

.mw_wp_form .stepform-fields.is-error .mwform-radio-field-text,
.mw_wp_form .stepform-fields.is-error .mwform-checkbox-field-text
{
    color: #B94A48;
    background-color: #F2DEDE;
    border-color: #EED3D7;
}

@media screen and (min-width: 769px) {
    .l-contact.l-stepform {
        padding-top:70px;
        padding-bottom: 70px;
    }

    .l-stepform .ttl {
        font-size: 25px;
    }

    .stepform__heading.stepform__heading--question {
        font-size: 18px;
    }

    .stepform__heading.stepform__heading--question:before {
        top: 5px;
    }

    .stepform__heading {
        font-size: 16px;
    }

    .stepform-fields .mwform-radio-field-text, .stepform-fields .mwform-checkbox-field-text {
        font-size: 17px;
    }

    .stepform-btn {
        font-size: 17px;
    }
}