/* business-contest.css — extracted from view (kakimori 2026-06-16). cascade order preserved; per-block auto-close applied. */

p.leadbtn {
    font-weight: 500;
    -webkit-text-stroke: 0.06vw;
    font-size: 1.6rem;
    line-height: 2.2vw;
    margin: 4% 10% 1%;
    text-align: center;
}
.link-box_btn.apply01 {
    margin-bottom: -1%;
}
a.linkbtn.link-box_btn_flex.js-item2 {
    color: #fff;
    font-weight: 600;
    font-size: 1.3rem;
}
span.link-box_btn_flex_text.b-text5 {
    font-size: 1.3rem;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
}
p.leadbtn.second {
    margin-top: 3%;
}
.link-box_btn {
    background-color: #484848;
    color: #fff;
}
#solution {
    width: 100%;
    height: auto;
    padding: 5rem 0 11rem;
    background: #fff;
    overflow: hidden;
}
.planbar {
    display: flex;
    align-items: center;
    margin-bottom: 2.5%;
    background: #ffffff;
    border: 2px solid #ffd1e6;
    border-radius: 60px;
    padding: 0% 0%;
    box-shadow: 0 2px 8px rgba(255, 154, 205, 0.15);
}

.planleft {
    width: 30%;
    background: #059512b0;
    border-radius: 20px;
    height: 5vw;
    text-align: center;
    vertical-align: middle;
    padding: 6% 0 0 0;
    font-size: 1.2vw;
    font-weight: 600;
    color: #fff;
}

.planright {
    width: 64%;
    font-size: 0.94vw;
    font-weight: 600;
    line-height: 1.4vw;
    vertical-align: middle;
    padding: 2% 0 2% 6%;
}

.link-box_btn.apply02 {
    margin-bottom: 8%;
}
span.mislead {
    display: block;
    font-size: 1.2rem;
    line-height: 28px;
    color: #000000;
}
#solution h3 {
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    color: #060606;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: .1rem;
    text-align: left;
    margin-bottom: 2rem;
    line-height: 1rem;
    padding: 4% 0 5%;
}
li.aboutbox {
    width: 98%;
    float: left;
    display: flex;
    border-radius: 20px;
    justify-content: flex-start;
    align-items: baseline;
    margin-bottom: 20px;
    padding: 5% 1% 2% 1%;
    background: #ffffff;
    margin: 2%;
}
span.listnumber {
    padding: 10px 20px 10px 20px;
    font-family: 'BentonSans', sans-serif;
    Font-weight: bold;
    font-size: 2rem;
    color: #ffffff;
    background: #000;
    border-radius: 50px;
    text-align: center;
    line-height: 1.3;
    width: 95px;
    height: 60px;
    margin: 0 auto;
    box-sizing: border-box;
    margin-right: 5%;
    margin-left: 3%;
    vertical-align: top;
}
p.datatile {
    color: #060606;
    font-size: 1.3rem;
    font-weight: 700;
    letter-spacing: .1rem;
    text-align: left;
    margin-bottom: 0rem;
    line-height: 1.4;
    padding: 2% 0;
}
span.liz {
font-size: 1.2rem;
    background: #0275b9;
    padding: 1% 2%;
    margin: 0% 0% 0%;
    display: block;
    font-weight:600;
    color: #fff;
}
span.menu_big {
    color: #060606;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: .1rem;
    text-align: left;
    margin-bottom: 1rem;
    line-height: 1.4;
    padding: 2% 0;
}
span.menu_sep {
    margin: 1% 1.5% 0 0.5%;
    font-size: 1.6rem;
}
span.liz.genchi {
    background: #34ce63;
}
.shinsabox-left {
    width: 25%;
    float: left;
    padding: 0 0%;
}
img.shinsain-img {
    width: 100%;
    border-radius: 100%;
}
.shinsabox-right {
    padding-left: 25%;
    padding-right: 0%;
}
.shinsabox {
    clear: both;
    min-height: 145px;
    margin-bottom: 75px;
}
p.shinsain-name2 {
    font-size: 2rem;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 3%;
}
p.shinsain-name1 {
font-size: 1.4rem;
    letter-spacing: 1px;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
    line-height: 1.4vw;
    margin-bottom: 3%;
}
p.shinsain-name3 {
    font-size: 0.94vw;
    letter-spacing: 1px;
    margin-bottom: 10px;
    line-height: 1.4vw;
    font-weight: 500;
    font-size: 1rem;
    font-weight: 500;
    -webkit-text-stroke: 0.01vw;
    line-height: 1.6;
}
.shinsabox {
    clear: both;
    margin: 5% 0 6%;
}
img.shinsain-img {
    width: 100%;
    border-radius: 0%;
    padding-right: 20%;
}
img.minimage {
    width: 100%;
}
#corp {
    width: 100%;
    padding: 0% 0 2%;
}
span.target {
    display: inline-block;
    width: 10%;
    background: #dedede;
    text-align: center;
    border-radius: 20px;
    margin-right: 2%;
}
p.lead {
    font-size: 1.1rem;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
    line-height: 1.6;
    margin-bottom: 2%;
}
a.link {
    text-decoration: underline;
}

section.howto {
    width: 66%;
    margin: 0 auto;
    background: #f5f5f5;
    border-radius: 20px;
    padding: 3% 3% 2%;
}
h4.kiyaku {
    font-size: 1.1rem;
    margin-bottom: 2%;
}
p.pic001 {
    font-size: 1.1rem;
    margin-bottom: 2%;
    font-weight: 500;
    -webkit-text-stroke: 0.02vw;
}
h4.kiyaku.ewn {
    font-weight: 600;
    font-size: 1.3rem;
    margin-bottom: 5%;
}
.u_inner {
    width: 80%;
    margin: 13% auto 0;
}
.u_inner.second {
    width: 73%;
    margin: 0 auto;
}
.text {
    float: right;
    width: 90%;
    margin-right: 4%;
}
p.catlead {
    font-size: 2.4rem;
    font-weight: 500;
    line-height: 1.8vw;
    vertical-align: middle;
    padding: 1% 0 2% 0%;
    -webkit-text-stroke: 0.08vw;
    letter-spacing: 1px;
    text-align: center;
}
p.catl {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 2.8rem;
    vertical-align: middle;
    padding: 1% 0 2% 0%;
    -webkit-text-stroke: 0.04vw;
    letter-spacing: 1px;
    text-align: left;
}
#solution .seo-menu li {
    background: #ff9acd;
    border-radius: 20px 20px 0 20px;
    height: 9rem;
    width: 33%;
    padding-top: 2rem;
    margin-bottom: 1.4rem;
    letter-spacing: .1rem;
    padding-bottom: 2rem;
    font-weight: 500;
    color: #ffffff;
}
ul.seo-menu {
    display: inline-block;
    margin-top: 5% !important;
}
#solution .seo-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 100%;
    width: auto;
    height: auto;
    text-align: center;
    margin: 0 auto 0px;
}
span.titlew {
    background: #000;
    color: #fff;
    padding: 10px 3%;
    margin-right: 2%;
    font-size: 1rem;
}
p.lead.firstprp {
    width: 100%;
    border-top: 1px dotted;
    padding-top: 4%;
    margin-top: 4%;
}

p.lead.prp {
    width: 82%;
    margin-left: 18%;
}
span.target {
    display: inline-block;
    width: 16%;
    background: #dedede;
    text-align: center;
    border-radius: 20px;
    margin-right: 2%;
}
.bcbod {
    background: #daf4ff;
    margin-bottom: 4%;
    margin-left: 18%;
    padding: 3%;
    width: 82%;
}
span.mislead { font-size: 1.3rem; }
p.rokox { font-size: 1.1rem; font-weight: 600; margin: 0 0 1% 0; }
a.btnform { width: 30%; background: #0494d0; padding: 2% 6%; border-radius: 28px; display: block; text-align: center; color: #fff; -webkit-text-stroke: 0.04vw; }
span.legray {
    color: #a0a0a0;
}
h2.c_ttl {
    color: #000;
    height: auto;
    margin: 3rem auto 2rem;
    text-align: center;
    font-size: 3rem;
    font-weight: 600;
}
img.imghok {
    width: 16vw;
}

p.icon {
        width: 60%;
    margin-right: 4%;
}
img.imghok {
    width: 9vw;
    border-radius: 0%;
    margin-right: 4%;
}
h4 {
    border-bottom: 1px solid #000;
    font-size: 1.8rem;
    font-weight: 600;
    -webkit-text-stroke: 0.01vw;
    margin-bottom: 6%;
    padding: 6% 0 6%;
    border-top: 1px solid #000;
}
p.themalead {
    font-weight: 500;
    -webkit-text-stroke: 0.02vw;
    font-size: 1.4rem;
    line-height: 27px;
}
section#gaiyou2 {
    margin-top: 2%;
}
section#gaiyou {
    margin-top: 6%;
}
.row.info.jsStanby {
    width:80%;
}
table#companyinfo_table {
    width: 100%;
    margin-bottom: 6%;
}
th.limit {
    width: 30%;
    vertical-align: top;
}
p.gaiyoutitle {
    text-align: left;
    padding: 30px 0 20px 8%;
    font-size: 1.6rem;
}
th.limit {
    width: 30%;
    vertical-align: top;
    border-top: 1px solid #d5d5d5;
    background: #f8f8f8;
}
td.limit {
    width: 70%;
    vertical-align: top;
    border-top: 1px solid #d5d5d5;
}
th.limit.last {
    border-bottom: 1px solid #d5d5d5;
}
td.limit.last {
    border-bottom: 1px solid #d5d5d5;
}
p.user {
    padding: 30px;
    font-size: 1.6rem;
    font-weight: 400;
    -webkit-text-stroke: 0.02vw;
    line-height: 26px;
}
span.line {
    display: block;
    width: 3px;
    height: 0;
    background-color: #3d3d3d;
    position: absolute;
    /* top: 0; */
    left: 50%;
    height: 5vw;margin-top: 2%;
}
.she {
    clear: both;
}
h2.c_ttl.second.she {
    display: inline-block;
    padding-top: 9%;
    width: 100%;
}
.inner.companyprofile {
    display: flex;
    width: 100%;
    margin: 3% auto 0;
}
p.kanrantext {
    text-align: center;
    font-size: 1.6rem;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
}
p.kanrantext.judgepending {
    margin-top: 2rem;
    font-weight: 400;
}
.about-box_text-box_heading-box.contactbo.judge {
    padding: 2% 0 3%;
}
.shinsabox {
    width: 50%;
    clear: both;
    min-height: 10vw!important;
    margin-bottom: 0vw!important;
}
img.shinsain-img {
    width: 100%;
    border-radius: 0%;
    padding-right: 0%;
}
.link-box_btn.first.judge {
    margin: 4% auto 5%;
}
.shinsabox-left {
    width: 45%!important;
    float: left;
    padding: 0 5%;
}
.shinsabox-left {
    width: 32%;
    float: left;
    padding: 0 5%;
}
.shinsabox {
clear: both;
    margin: 2% 0 2% 0%;
    padding-top: 2%;
}
h2.c_ttl.second.judge {
    margin-top: 7%!important;
}
.inner.companyprofile.second {
    margin-top: 1%;
}
section#judge {
    margin-bottom: 6%;
}
.link-box_btn {
    width: 40%;
}
.link-box_btn.judge.apply01 {
    width: 33%;
    background: #7b7b7b;
}
.box99 {
    clear: both;
    display: inline-block;    padding-top: 4%;
}
.linebox {
    display: flex;
}
.leftbox01 {
    width: 40%;
}
.rightbox01 {
    width: 60%;
}

.box99 {
    clear: both;
    display: block;
    margin: 0 auto;
    margin-top: 5%;
    border-top: 1px solid #000;
    width: 70%;
    border-bottom: 1px solid #000;
    padding: 3% 2%;
    margin-bottom: 5%;
}
.leftbox {
    background: #000;
    margin-bottom: 4%;
    padding: 2%;
    font-size: 1.1rem;
    color: #fff;
}
li.tokuri {
    margin-bottom: 0%;
    list-style: disc;
    margin-left: 2%;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
    font-size: 1.6rem !important;
    line-height: 3rem;        text-align: left;
}
.leftbox {
    background: #000000;
    margin-bottom: 4%;
    padding: 2%;
    font-size: 1.8rem;
    font-weight: 600;
    color: #ffffff;
}
img.data {
    width: 85%;
}
div#faq-index {
    width: 78%;
    margin: 0 auto;
}
img.logoshe {
    width: 80%;
    margin: 0 auto;
    display: block;
    margin-top: 4%;
    margin-bottom: 1%;
}
ul.applylist {
    padding: 30px;
    font-size: 1.6rem;
    font-weight: 400;
    -webkit-text-stroke: 0.02vw;
    line-height: 26px;
    list-style: disc;
    padding-left: 6%;
}
h4.tit-q {
    padding: 2%;
    font-size: 1.2rem;
}
h4.tit-q {
    margin-bottom: 0;
    padding: 2%;
    font-size: 1.2rem;
    border-bottom: none;
}
.link-box_btn.judge.apply01{
    width: 33%;
    background: #f0f0f0;
    color: #000;
}
.link-box_btn.judge.apply01 {
    width: 33%;
    background: #f0f0f0;
    color: #000;
}
a.linkbtn.link-box_btn_flex.js-item2.judge {
    color: #000;
}
a.pdflistreport {
    width: 70%;
    background: #5bd5ed;
    display: block;
    text-align: center;
    margin: 5% auto -1%;
    padding: 1.5%;
    font-size: 1vw;
    font-weight: 500;
    -webkit-text-stroke: 0.02vw;
}
.l-wrapper {
    padding-top: 6%;
}
#corp p {
    font-size: 2.8rem;
    font-weight: 500;
    -webkit-text-stroke: 0.06vw;
    color: #3b3b3b;
    letter-spacing: .6rem;
    line-height: 3rem;
    margin: auto;
    text-align: center;
}
span.link-box_btn_flex_text.b-text5 {
    width: 50%;
    background: #484848;
    border-radius: 53px;
    text-align: center;
    padding: 3% 30px 3%;
    clear: both;
    color: #ffffff;
    display: block;
    text-align: center;
    font-size: 2rem;
    margin: 0% auto 0;
    font-weight: 500;
}
#solution h2.c_ttl {
    color: #000;
    height: auto;
    margin: 3rem auto 2rem;
    text-align: center;
    font-size: 3rem;
    font-weight: 600;
}
h2.c_ttl.second {
    margin: 2% 0 4%!important;
}
h2.c_ttl.second.main {
    margin: 4% 0 4%!important;
}
span.link-box_btn_flex_text.b-text5.gray {
    background: #f0f0f0;
    color: #000;
}
a.pdflistreport.final {
    background: #b9ed5c;
    margin-bottom: -4%;
}
p.scrt-fade.visible {
    font-weight: 400;
    -webkit-text-stroke: 0.02vw;
    font-size: 1.6rem !important;
    line-height: 2.4vw;
    margin: 3% 16% 0;
    text-align: left;
    -webkit-text-stroke: 0.04vw;
}
@media only screen and (max-width: 767px) {
a.pdflistreport {
    width: 90%;
    background: #5bd5ed;
    display: block;
    text-align: center;
    margin: 10% auto -1%;
    padding: 1.5%;
    font-size: 13px;
    font-weight: 600;
    -webkit-text-stroke: 0vw;
}
section.howto {
    width: 90%;
    margin: 0 auto;
    background: #f5f5f5;
    border-radius: 20px;
    padding: 5% 5% 5%;
}
h4.kiyaku.ewn {
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 9%;
}
h4.kiyaku {
    font-size: 14px;
    margin-bottom: 5%;
    font-weight: 500;
    -webkit-text-stroke: 0.1vw;
    line-height: 20px;
}
p.leadbtn {
    font-weight: 600;
    -webkit-text-stroke: 0.04vw;
    font-size: 13px;
    line-height: 20px;
    margin: 15% 10% 0%;
    text-align: center;
}
.link-box_btn.apply02 {
    margin-bottom: 15%;
}
#solution {
    width: 100%;
    height: auto;
    padding: 3rem 0 4rem;
    background: #f9f9f9;
    overflow: hidden;
}
.u_inner.second {
    width: 90%;
    margin: 0 auto;
}
p.user {
    padding: 15px;
    font-size: 13px;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
    line-height: 20px;
}
p.leadbtn.second {
    margin-top: 8%;
}
a.linkbtn.link-box_btn_flex.js-item2 {
    color: #fff;
    font-weight: 600;
    font-size: 13px;
}
p.pic001 {
    margin-bottom: 10%;
    font-weight: 500;
    -webkit-text-stroke: 0.1vw;
    font-size: 13px;
    font-weight: 500;
    -webkit-text-stroke: 0.1vw;
    line-height: 20px;
}
.shinsabox-left {
    width: 100%;
    float: left;
    padding: 0 0%;
    display: block;
    text-align: center;
}
img.shinsain-img {
    width: 52%;
    border-radius: 0%;
    padding-right: 0%;
    text-align: center;
    margin-bottom: 7%;
    margin-top: 5%;
}
.shinsabox-right {
    padding-left: 0%;
    padding-right: 0%;
}
p.shinsain-name1 {
        font-size: 1.4rem;
        letter-spacing: 0px;
        font-weight: 500;
        -webkit-text-stroke: 0.04vw;
        line-height: 18px;
        margin-bottom: 3%;
        text-align: left;
}
p.shinsain-name3 {
    font-size: 0.94vw;
    letter-spacing: 1px;
    margin-bottom: 10px;
    line-height: 1.4vw;
    font-weight: 500;
    font-size: 13px;
    font-weight: 500;
    -webkit-text-stroke: 0.1vw;
    line-height: 20px;
    text-align: left;
}
p.shinsain-name2 {
        font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 6%;
}
#solution h3 {
    margin-top: 2%;
}
span.target {
    display: inline-block;
    width: 20%;
    background: #dedede;
    text-align: center;
    border-radius: 20px;
    margin-right: 2%;
}
li.aboutbox {
    width: 96%;
    float: left;
    display: block;
    border-radius: 20px;
    justify-content: flex-start;
    align-items: baseline;
    margin-bottom: 20px;
    padding: 10% 7% 8% 7%;
    background: #ffffff;
    margin: 2% 2% 5%;
}
#solution h3 {
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
    color: #060606;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .1rem;
    text-align: left;
    margin-bottom: 2rem;
    line-height: 1.4;
    padding: 6% 0;
}
p.datatile {
    color: #060606;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .1rem;
    text-align: left;
    margin-bottom: 0rem;
    line-height: 1.4;
    padding: 2% 0;
}
span.menu_big {
    color: #060606;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .1rem;
    text-align: left;
    margin-bottom: 1rem;
    line-height: 1.4;
    padding: 2% 0;
}
span.menu_sep {
    margin: 1% 1.5% 0 0.5%;
    font-size: 14px;
}
p.lead {
    width: 100%;
    font-size: 13px;
    font-weight: 500;
    -webkit-text-stroke: 0.1vw;
    line-height: 20px;
    margin: 0 auto 8%;
}
p.lead {
    font-size: 13px;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
    line-height: 20px;
    margin-bottom: 6%;
    text-align: left;
}
span.liz {
    font-size: 13px;
    background: #0275b9;
    padding: 2% 2%;
    margin: 0% 0% 2%;
    display: block;
    font-weight: 600;
    color: #fff;
}
.text {
    margin-right: 0%;
}
span.listnumber {
    padding: 10px 20px 10px 16px;
    font-family: 'BentonSans', sans-serif;
    font-weight: bold;
    font-size: 14px;
    color: #ffffff;
    background: #000;
    border-radius: 75px;
    text-align: center;
    line-height: 18px;
    width: 42px;
    height: 40px;
    margin: 0 auto;
    box-sizing: border-box;
    margin-right: 0%;
    margin-left: 3%;
    vertical-align: top;
    margin: 0 auto 30px;
    display: block;
}
br.sp-only {
    display: inline;
}
.u_inner {
    width: 90%;
    margin: 10% auto 0;
}
.text {
    float: right;
    width: 100%;
}
span.mislead {
    font-size: 14px;
}
.shinsabox {
    clear: both;
    margin: 5% 0 13% 0%;
    border-top: 1px dotted;
    padding-top: 5%;
}
p.lead.prp {
    width: 100%;
    margin-left: 0%;
}
.bcbod {
    background: #daf4ff;
    margin-bottom: 4%;
    margin-top: 10%;
    margin-left: 0%;
    padding: 3%;
    width: 100%;
}
p.rokox {
    font-size: 14px;
    font-weight: 600;
    margin: 10px 0 4% 0;
    text-align: left;
}
span.titlew {
    background: #000;
    color: #fff;
    padding: 5px 3%;
    margin-right: 3%;
    font-size: 12px;
}
p.lead.firstprp {
    width: 100%;
    border-top: 1px dotted;
    padding-top: 8%;
    margin-top: 7%;
}
.fanction {
    margin: -5px 0 7% 0;
}
span.line {
    display: block;
    width: 2px;
    height: 0;
    background-color: #3d3d3d;
    position: absolute;
    /* top: 0; */
    left: 50%;
    height: 12vw;
    margin-top: 4%;
}
.box99 {
    clear: both;
    display: block;
    margin: 0 auto;
    margin-top: 8%;
    border-top: 1px solid #000;
    width: 100%;
    border-bottom: 1px solid #000;
    padding: 3% 2%;
    margin-bottom: 5%;
}
.linebox {
    display: inline-block;
}
.leftbox01 {
    width: 100%;
    text-align: center;
    padding: 6% 13%;
}
.rightbox01 {
    width: 100%;
}
.leftbox {
    background: #ffdf59;
    margin-bottom: 5%;
    padding: 3%;
    font-size: 13px;
    font-weight: 600;
    color: #000;
    text-align: center;
}
.link-box_btn {
    width: 90%;
}
li.tokuri {
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
    font-size: 14px;
    margin-bottom: 5%;
    list-style: disc;
    margin-left: 1%;
}
ul.tokulist {
    padding-left: 5%;
    font-size: 13px;
    margin-bottom: 7%;
}
.link-box_btn.apply02 {
    margin-bottom: 19%;
}

img.imghok {
    width: 18vw;
    border-radius: 0%;
    margin-right: 2%;
}
img.logoshe {
    width: 100%;
    margin: 0 auto;
    display: block;
    margin-top: 2%;
    margin-bottom: 1%;
}
h2.c_ttl.second.she {
    display: inline-block;
    padding-top: 17%;
    width: 100%;
}
h4 {
    border-bottom: 1px solid #000;
    font-size: 14px;
    font-weight: 600;
    -webkit-text-stroke: 0.01vw;
    margin-bottom: 5%;
    padding: 4% 0 4%;
    border-top: 1px solid #000;
}
p.icon {
    margin-right: 5%;
}
p.themalead {
    font-weight: 500;
    -webkit-text-stroke: 0.02vw;
    font-size: 12px;
    line-height: 16px;
}
h2.c_ttl.second.judge {
    -webkit-text-stroke: 0.1vw;
    font-size: 17px;
    color: #3b3b3b;
    height: 2rem;
    line-height: 25px;
    margin-bottom: 16%;
    text-shadow: none;
    text-align: center;
    font-weight: 600;
    margin-top: 58px;
}

.concept-body {
    clear: both;
}
h2.c_ttl.second.judge {
    margin-top: 16%!important;
}

.link-box_btn.judge.apply01 {
    width: 65%;
    background: #f0f0f0;
    color: #000;
    margin-top: 18%;
    display: block;
    margin-bottom: 8%;
}
p.kanrantext {
    text-align: center;
    font-size: 13px;
    font-weight: 500;
    -webkit-text-stroke: 0.06vw;
}
h2.c_ttl.second.judge {
    margin-top: 13%!important;
}

.inner.companyprofile {
    display: inline;
    width: 100%;
    margin: 3% auto 0;
}
.shinsabox {
    width: 100%;
    clear: both;
    min-height: 10vw!important;
    margin-bottom: 0vw!important;
}
p.shinsain-name2 {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 3%;
}
p.shinsain-name1 {
    font-size: 12px;
    letter-spacing: 0px;
    font-weight: 500;
    -webkit-text-stroke: 0.1vw;
    line-height: 18px;
    margin-bottom: 3%;
    text-align: left;
}
img.shinsain-img {
    width: 70%;
    border-radius: 0%;
    padding-right: 0%;
    text-align: center;
    margin-bottom: 7%;
    margin-top: 0%;
}
.l-wrapper {
    padding-top: 21%;
}
p.scrt-fade.visible {
    text-align: left;
}
a.pdflistreport {
    width: 90%;
    background: #5bd5ed;
    display: block;
    text-align: center;
    margin: 10% auto -1%;
    padding: 1.5%;
    font-size: 12px;
    font-weight: 600;
    -webkit-text-stroke: 0vw;
}


a.pdflistreport {
    width: 90%;
    background: #5bd5ed;
    display: block;
    text-align: center;
    margin: 10% auto -1%;
    padding: 1.5%;
    font-size: 12px;
    font-weight: 600;
    -webkit-text-stroke: 0vw;
}
li.tokuri {
        font-weight: 500;
        -webkit-text-stroke: 0.08vw;
        font-size: 12px;
        margin-bottom: 0%;
        list-style: disc;
        margin-left: 0%;
}
li.tokuri {
    margin-bottom: 0%;
    list-style: disc;
    margin-left: 2%;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
    font-size: 13px !important;
    line-height: 2rem;
}
p.leadbtn {
    font-weight: 600;
    -webkit-text-stroke: 0.04vw;
    font-size: 12px;
    line-height: 20px;
    margin: 15% 0% 0%;
    text-align: center;
}
span.link-box_btn_flex_text.b-text5 {
    width: 50%;
    background: #484848;
    border-radius: 53px;
    text-align: center;
    padding: 0% 30px 0%;
    clear: both;
    color: #ffffff;
    display: block;
    text-align: center;
    font-size: 14px;
    margin: 0% auto 0;
    font-weight: 500;
}
.link-box_btn.apply02 {
    margin-bottom: 15%;
}
.row.jsStanby {
    width: 85%;
    margin: 0 auto;
}



.shinsabox-left {
    width: 25%!important;
    float: left;
    padding: 0 5%;
}
img.shinsain-img {
    width: 100%;
    border-radius: 0%;
    padding-right: 0%;
    text-align: left;
    margin-bottom: 7%;
    margin-top: 0%;
}
.shinsabox-right {
    padding-left: 30%;
    padding-right: 0%;
}
span.link-box_btn_flex_text.b-text5 {
    width: 50%;
    background: #484848;
    border-radius: 53px;
    text-align: center;
    padding: 0% 0px 0%;
    clear: both;
    color: #ffffff;
    display: block;
    text-align: center;
    font-size: 12px;
    margin: 0% auto 0;
    font-weight: 500;
}
.link-box_btn.judge.apply01 {
    width: 80%;
    background: #f0f0f0;
    color: #000;
    margin-top: 15%;
    display: block;
    margin-bottom: 15%;
}
p.user {
padding: 15px 5%;
        font-size: 13px;
        font-weight: 500;
        -webkit-text-stroke: 0.04vw;
        line-height: 20px;
}


}

.line01 {
    width: 100%;
    display: flex;
    margin-bottom: 0%;
}
.line01-b {
    width: 20%;
}
.line01-d {
    width: 80%;
}
.ss {
    background: #fff;
    border-radius: 20px;
    padding: 20px;
}
p.autboor {
    font-size: 1.6rem!important;
    font-weight: 500;
    -webkit-text-stroke: 0.06vw;
    color: #3b3b3b;
    letter-spacing: .6rem;
    line-height: 3rem;
    margin: auto;
    font-weight: 500!important;
    -webkit-text-stroke: 0.04vw!important;
    font-size: 1.6rem!important;
    line-height: 3rem!important;
    margin: 1vw 10% 0;
    text-align: left!important;
    letter-spacing: 0px!important;
}
a.line0002 {
    text-decoration: underline;
}
.autboor.time {
    line-height: 3rem!important;
}
span.finalist {
    text-decoration: underline;
}
a.pdflistreport.resu {
    background: #ffe579;
    margin-bottom: -4%;
}
.planleftr05 {
    width: 31%;
    background: #f776b8;
    border-radius: 60px;
    height: 7vw;
    text-align: center;
    vertical-align: middle;
    padding: 4% 0 0 0;
    font-size: 1.2vw;
    font-weight: 600;
    color: #ffffff;
}

.planrightr05 {
    width: 64%;
    font-size: 1.7rem;
    font-weight: 500;
    line-height: 1.8vw;
    vertical-align: middle;
    padding: 1% 0 2% 6%;
    -webkit-text-stroke: 0vw;
    letter-spacing: 1px;
}
.u_inner.top {
    margin-top: 6%;
}
li.listtable {
    padding-left: 2%;
    margin-bottom: 1%;
    font-size: 1.6rem;
    line-height: 2.2rem;
}
p.locl {
    font-size: 1.6rem;
    padding-top: 2%;
}
p.locl {
    color: #ffffff !important;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
}
p.catl.zero {
    font-size: 1.6rem;
    -webkit-text-stroke: 0.02vw;
}
p.locl.sok {
    padding-top: 0%;
    line-height: 2.4rem;
}
p.mix003 {
    text-align: center;
    font-weight: 500;
    font-size: 2rem;
    margin-bottom: 3%;
}

.contents.plan.main {
    width: 70%;
    margin: 0 auto;
}
.rowbc{width:100%;background:#ffedf6;padding:1% 0 1%;margin:5% 0 1%}
p.catletitle {
    background: #fc98ca4a;
    width: 80%;
    margin: 0 auto;
    padding: 3% 0;
    border-radius: 74px;
    border: 6px solid #ff9acd;
    text-align: center !important;
    font-size: 2rem;
    font-weight: 600;
    color: #000000;
    letter-spacing: 3px;
}
p.catl.tm {
    font-size: 1.6rem;
    text-align: center;
}
li.plantitle {
    list-style: circle;text-align: left;
}
.concept-body {
    text-align: center;
    padding-bottom: 4%;
}
h3.applytitle {
    font-size: 1.8rem;
    margin-top: 4%;
    -webkit-text-stroke: 0.06vw;
}
p.centerg.first {
    width: 61%;
    margin: 1% auto 0;
}
p.centerg {
    background: #3090ff;
    line-height: 75px;
    text-align: center;
    margin: 6% auto 0px;
    max-width: 1140px;
    width: 85%;
    height: auto;
    padding: 3%;
    border-radius: 44px;
    letter-spacing: 2px;
    font-size: 2rem !important;
    font-weight: 600;
    z-index: 1;
    color: #fff;
    transition: transform 0.3s 
ease, box-shadow 0.3s 
ease;
}

/* マウスオン時の拡大 */
p.centerg:hover {
    transform: scale(1.05); /* 拡大 */
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2); /* 影を追加して立体感を */
}
p.locks {
    display: block;
    margin: 1% 0 10% 0;
    font-size: 1vw;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
}
a.applylink {
    color: #fff;
}
.links.biji {
    text-align: center;
    font-size: 1.8rem;
    text-decoration: underline;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
}
section.l-content.comyu {
    margin-top: 7em !important;
}
.u_inner.shinsain {
    width: 70%;
    margin: 2% auto 2%;
}
section#solutiobc01 {
    background: #f4f4f4;
    padding: 4% 0 6%;
}
.inner.listcompany {
    display: block;
}
.row.eventlist {
    border-top: none!important;
    width: 66%!important;
    margin: 1% auto 2%!important;
    padding-top: 3%;
}
.companylist {
    padding: 3%;
    width: 33%;
}
p.cname0 {
    font-size: 1.6rem;
    font-weight: 600;
    text-align: center;
}
h2.eventlist {
    color: #000;
    height: auto;
    margin: 1rem auto 3rem;
    text-align: center!important;
    font-size: 3rem!important;
    font-weight: 600;
}
@media only screen and (max-width: 767px) {
    section.eventlist {
    width: 100%;
    margin: 19% auto 3% !important;
    display: inline-block;
}
    p.mix003 {
    text-align: center;
    font-weight: 500;
    font-size: 14px;
    margin-bottom: 3%;
}
p.autboor {
    font-size: 1.6rem!important;
    font-weight: 500;
    -webkit-text-stroke: 0.06vw;
    color: #3b3b3b;
    letter-spacing: .6rem;
    line-height: 3rem;
    margin: auto;
    font-weight: 500!important;
    -webkit-text-stroke: 0.1vw!important;
    font-size: 13px!important;
    line-height: 22px!important;
    margin: 3% 10% 0;
    text-align: left!important;
    letter-spacing: 0px!important;
}
.autboor.time {
    line-height: 22px!important;
}
    .line01 {
        width: 100%;
        display: grid;
        margin-bottom: 0%;
    }
.u_inner {
    width: 90%;
    margin: 0 auto 0;
}

a.pdflistreport.resu {
    background: #ffe579;
    margin-bottom: -15px;
}
.planbar {
    display: inline;
    margin-bottom: 2%;
}
.planleftr05 {
    width: 100%;
    background: #eff02a;
    border-radius: 20px;
    height: 4rem;
    text-align: center;
    vertical-align: middle;
    padding: 3% 0 0 0;
    font-size: 13px;
    font-weight: 600;
    color: #000;
    line-height: 4vw;
}
.planrightr05 {
    width: 90%;
    font-size: 13px;
    font-weight: 500;
    line-height: 3.8vw;
    vertical-align: middle;
    padding: 1% 0 2% 6%;
    -webkit-text-stroke: 0.04vw;
    letter-spacing: 0px;
    margin: 4% 0 4%;
}
p.catlead.vox {
    color: #000;
    height: auto;
    margin: 12rem auto 2rem;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    -webkit-text-stroke: 0.14vw;
}
#solution .seo-menu li {
    background: #fff;
    border-radius: 20px 20px 0 20px;
    height: auto;
    width: 100%;
    padding-top: 2rem;
    margin-bottom: 1.4rem;
    letter-spacing: .1rem;
    padding-bottom: 2rem;
    font-weight: 500;
    color: #000;
}

    #solution .seo-menu li p {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 2.4rem;    padding-top: 1.2rem;
}
    h2.c_ttl.she {
    font-size: 17px;
    color: #3b3b3b;
    height: 2rem;
    line-height: 25px;
    margin-bottom: 5%;
    text-shadow: none;
    text-align: center;
    font-weight: 600;
    margin-top: 13%;
}
p.catl {
    font-size: 12px;
    font-weight: 500;
    line-height: 1.8rem;
    vertical-align: middle;
    padding: 4% 0 5% 0%;
    -webkit-text-stroke: 0.04vw;
    letter-spacing: 1px;
    text-align: left;
}

    p.gaiyoutitle {
        text-align: left;
        padding: 15px 0 15px 5%;
        font-size: 1.4rem;
    }
    li.listtable {
        padding: 0 2% 1% 0;
        font-size: 1.4rem;
        font-weight: 500;
        -webkit-text-stroke: 0.04vw;
        line-height: 2rem;
        margin-bottom: 2%;
    }
    ul.applylist {
    margin: 15px 0 15px 15px;
    padding: 0px 0 0 0px;
    font-size: 1.6rem;
    font-weight: 500;
    -webkit-text-stroke: 0.02vw;
    line-height: 26px;
    list-style: disc;
    padding-left: 6%;
}
td.limit {
    width: 100%;
    vertical-align: top;
    border-top: 1px solid #d5d5d5;
}

ul.planc {
    list-style: disc;
}
th.limit {
    width: 100%;
    vertical-align: top;
    border-top: 1px solid #d5d5d5;
    background: #f8f8f8;
}
ul.applylist {
    margin: 15px 0 15px 2%;
    padding: 0px 0 0 0px;
    font-size: 13px;
    font-weight: 500;
    -webkit-text-stroke: 0.02vw;
    line-height: 26px;
    list-style: disc;
    padding-left: 6%;
}
p.catlead.vox.title {
    font-size: 14px;
    margin: 3% 0 0;
}

.contents.plan.main {
    width: 90%;
    margin: 0 auto;
}
h2.c_ttl.second.main {
    margin: 4% 0 11% !important;
}
    .contents.plan.main {
        width: 100%;
        margin: 0 auto;
    }


.row.info.jsStanby {
    width: 100%;
}
p.catl.zero {
    font-size: 12px;
    -webkit-text-stroke: 0.02vw;
}
p.catletitle {
    background: #09a8d8;
    width: 100%;
    margin: 0 auto;
    padding: 2% 0;
    border-radius: 74px;
    border: 6px solid #f0f0f0;
}
p.catl.tm {
    font-size: 14px;
    text-align: center;
    line-height: 24px;
}

planleftr05 {
    background: #20b7e5!important;
}
h3.applytitle {
    font-size: 14px;
    margin-top: 4%;
    -webkit-text-stroke: 0.06vw;
    font-size: 13px;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
    line-height: 20px;
}
p.centerg {
    background: #000;
    line-height: 50px;
    text-align: center;
    margin: 2% auto 0px;
    max-width: 1140px;
    width: 100%;
    height: auto;
    border-radius: 0px;
    letter-spacing: 2px;
    font-size: 14px;
    font-weight: 600;
    z-index: 1;
    color: #fff;
    border-radius: 44px;
}
.rowbc {
    width: 100%;
    background: #fdffa7;
    padding: 9% 0 4%;
    margin: 13% 0 1%;
}
p.catletitle {
    font-size: 1.4rem;
    font-weight: 600;
    color: #fff;
            text-align: center;
    letter-spacing: 3px;
}

p.locks { display: block; margin: 7% 0 17% 0; font-size: 12px; font-weight: 500; -webkit-text-stroke: 0.04vw; }
p.centerg.first { width: 100%; margin: 10% auto 0;display: block; }
li.tokuri { margin-bottom: 2%; list-style: disc; margin-left: 2%; font-weight: 500; -webkit-text-stroke: 0.1vw; font-size: 1.4rem!important; line-height: 2rem; text-align: left; }
p.catletitle { background: #09a8d8; width: 100%; margin: 0 auto; padding: 4% 0; border-radius: 74px; border: 6px solid #dddddd; }
li.plantitle { list-style: circle; text-align: left; font-size: 1.4rem; font-weight: 500; -webkit-text-stroke: 0.1vw; line-height: 22px; margin-bottom: 2%; }
#solution .seo-menu li p { font-size: 1.3rem; font-weight: 600; line-height: 1.6rem; padding-top: 1.2rem; color: #fff !important; }
#solution .seo-menu li { background: #008db9; border-radius: 20px 20px 0 20px; height: auto; width: 100%; padding-top: 1rem; margin-bottom: 1.4rem; letter-spacing: .1rem; padding-bottom: 2rem; font-weight: 500; color: #000; }
img.minimage { width: 100%; margin-top: 0%!important; }
p.scrt-fade.concept.visible { font-weight: 500; -webkit-text-stroke: 0.1vw; font-size: 1.4rem!important; line-height: 2.8rem; margin: 10% auto 0%; max-width: 80%; }
#corp p { font-size: 1.8rem!important; font-weight: 600; -webkit-text-stroke: 0.06vw; color: #3b3b3b; letter-spacing: .6rem; line-height: 3rem!important; margin: auto; text-align: center; }
h2.c_ttl { font-size: 1.8rem; color: #000000; height: 2rem; line-height: 25px; text-shadow: none; text-align: center; font-weight: 600; }
h2.c_ttl.second { margin: 12% 0 8%!important; }
h2.c_ttl.she { margin-bottom: 9%; margin-top: 13%; }
}  /* auto-closed (元はstyle境界でブラウザ補完) */

/* ===== style block boundary ===== */

/* メインビジュアル PC: 94vw + 角丸 (kakimori 2026-06-16) */
@media (min-width: 768px) {
  .minimage.pconly {
    width: 94vw;
    height: auto;
    border-radius: 24px;
    display: block;
    margin: 0 auto;
  }
  /* 募集プラン帯(.rowbc): 左側の上下を角丸 + 左10%インセット (PCのみ) */
  .rowbc {
    border-radius: 65px 0 0 65px;
    margin-left: 10%;
  }
  /* 募集プランrow: PCでセンター寄せ + 左10%シフトは transform で温存(margin:0 autoを潰さない / 他に影響なし) */
  .rowbc > .row.jsStanby.main {
    width: 85%;
    margin-left: auto;
    margin-right: auto;
    transform: translateX(-10%);
  }
  /* 部門ラベル(.planleftr05): テキストを縦中央に整える (PC) */
  .planleftr05 {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
  }
  /* eventlistセクション 上マージン詰め (PC / el1.php基底をこのページのみ上書き) */
  section.eventlist {
    margin: 0 auto 3% !important;
  }
}
.titleresult {
  width: 60%;
  margin: 2% auto 0;
  text-align: center;
  font-weight: 600;
  font-size: 1.9rem;
}


.titleresult a {
    display: inline-block;
    text-decoration: none;
    color: #ffffff;
    background-color: #55c469;
    padding: 1% 11%;
    border-radius: 8px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    width: 100%;
}

.titleresult a:hover {
  box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2); /* ホバー時の影を強調 */
  transform: translateY(-2px); /* 少し浮き上がるようにする */
}
.titleresult.second {
    margin: 2% auto 2%;
}
a.box.final {
    background: #5eacff;
}
a.box.onkin {
    background: #e07e0e;
}

p.autboor.line {
    text-align: center!important;
    display: block;
    margin: 2% auto -3%;
    width: 65%;
}
.titleresult.top {
    margin-top: 2%;
}
a.box.onki {
    background: #63b1e3;
}
@media (max-width: 768px) {
    p.autboor.line {
    text-align: center!important;
    display: block;
    margin: 2% auto;
    width: 65%;
}
  .titleresult {
    width: 90%; /* 幅を広げて画面にフィット */
    font-size: 1.6rem; /* 文字サイズを少し小さく */
  }
.titleresult.second {
    margin: 2% auto 10%;
}
    .titleresult a {
        padding: 10px 20px;
        font-size: 1.3rem;
    }
    a.pagelink {
    font-size: 1.4rem;
    font-weight: 500;
    -webkit-text-stroke: 0.04vw;
}
    th.limit {
        width: 25%;
        vertical-align: top;
        border-top: 1px solid #d5d5d5;
        background: #f8f8f8;
    }
        h2.eventlist {
        color: #000;
        height: auto;
        margin: 9rem auto 3rem;
        font-size: 14px;
        text-align: center;
        font-size: 18px;
        font-weight: 600;
    }
h2.eventlist {
    color: #000;
    height: auto;
    margin: 1rem auto 3rem;
    text-align: center !important;
    font-size: 2rem !important;
    font-weight: 600;
}
#solution .seo-menu li {
    background: #eee340;
}
    p.catletitle {
        background: #f7ef81;
        border: 6px solid #eee340;
        color: #000;
    }
        #solution .seo-menu li p {
        color: #000000 !important;
    }
        h2.eventlist {
        margin: 10rem auto 2rem;
    }
}
.applylink.first.open-overlay {
  pointer-events: none; /* クリックを無効化 */
  cursor: default;      /* マウスカーソルを通常に */
}
.business-contest-section {
        padding: 6rem 5%;
        max-width: 62%;
        margin: 0 auto;
        background: #fef9cd;
        border-radius: 20px;
        margin-top: 4%;
    }
.top1 {
    background: #ded138!important;
}
.applyButton {
    display: inline-block;
    width: 100%;
    max-width: 70%;
    margin: 5% auto 0;
    padding: 16px 22px;
    text-align: center;
    background: #4fb3f8;
    color: #ffffff;
    font-size: 1.8rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: 40px;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.12);
    transition: transform 0.25s 
ease, box-shadow 0.25s 
ease, background 0.25s 
ease;
}

.applyButton:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 6px 20px rgba(0,0,0,0.16);
  background: #4fb3f8; /* 少しだけ濃くして“押したい感”UP */
}

.applyButton:active {
  transform: scale(0.98);
  box-shadow: 0 2px 8px rgba(0,0,0,0.10);
}

/* スマホ最適化 */
@media (max-width: 768px) {
  .applyButton {
    padding: 14px 18px;
    border-radius: 12px;
    font-size: 1rem;
  }
}

a.box.bc {
    background-color: #47a9ff;
}

/* ===== style block boundary ===== */

        .bodybtn {
display: inline-block;
    padding: 2%;
    font-size: 1.8rem;
    color: #fff;
    width: 60rem;
    background-color: #000;
    border: none;
    border-radius: 46px;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.bodybtn:hover {
    background-color: #656565; /* マウスオーバー時の色 */
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); /* 影効果 */
}
.btn {
    text-align: center;
    margin: 7% 0 0;
    width: 100%;
}
.u_inner.second.misoubo {
    height: 32rem;
}
.bodybtn {
    text-align: center;
    display: block;
    padding: 2%;
    font-size: 1.8rem;
    color: #fff;
    width: 60rem;
    background-color: #000;
    border: none;
    border-radius: 46px;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
    margin: 0 auto;
    margin-top: 4%;
}
@media (max-width: 768px) {
    .bodybtn {
        width: 100%;
        padding: 14px 0; /* スマホ表示時はボタン幅を100%に */
        font-size: 18px;
        box-sizing: border-box; /* ボックスサイズを調整 */
    }
    .u_inner.shinsain {
    width: 90%;
    margin: 2% auto 2%;
}
    p.shinsain-name1 {
        font-size: 1.4rem;
        letter-spacing: 0px;
        font-weight: 500;
        -webkit-text-stroke: 0.04vw;
        line-height: 18px;
        margin-bottom: 3%;
        text-align: left;
    }
    .shinsabox-left {
        width: 30% !important;
        float: left;
        padding: 0 4%;
        margin-bottom: 3%;
    }
    p.kanrantext {
        text-align: center;
        font-size: 1.4rem;
        font-weight: 600;
        -webkit-text-stroke: 0.06vw;
        margin-bottom: 8%;
    }
    .btn {
    text-align: center;
    margin: 15% 0 11%;
    width: 100%;
}
    section.eventlist {
        width: 100%;
        margin: 0% auto 3% !important;
        display: inline-block;
    }
    .row.eventlist {
    border-top: none !important;
    width: 90% !important;
    margin: 1% auto 2% !important;
    padding-top: 3%;
}
p.cname0 {
    font-size: 1.2rem;
    font-weight: 600;
}
}
h6.txt {
    font-size: 1.8rem;
    font-weight: 500;
-webkit-text-stroke: 0.06vw;
    margin-top: 4%;
    border-bottom: 1px solid #000;
    padding-bottom: 1%;
}
@media (max-width: 768px) {
h6.txt {
clear: both;
        font-size: 1.4rem;
        font-weight: 600;
        -webkit-text-stroke: 0.04vw;
        margin-top: 4%;
        border-bottom: none;
        padding-bottom: 0%;
}
.shinsabox.last {
    border-bottom: 1px dotted;
    padding-bottom: 6%;        min-height: 30vw !important;
}
}

.business-contest-section {
    padding: 6rem 5%;
    max-width: 90%;
    margin: 0 auto;
    background: #cdf4fe;
    border-radius: 20px;
    margin-top:4rem;
}
  .business-contest-section h2 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
    font-weight: bold;
  }

  .business-contest-section p {
    margin-bottom: 2rem;
    font-size: 1.6rem;
    line-height: 2.4rem;
    font-weight: 500;
  }

  .tab-nav {
    display: flex;
    border-bottom: 1px solid #ccc;
    margin-bottom: 2rem;
  }

  .tab-nav button {
    flex: 1;
    background: none;
    border: none;
    font-size: 1em;
    padding: 1rem;
    cursor: pointer;
    text-align: center;
    outline: none;
    border-bottom: 2px solid transparent;
    transition: color 0.3s;
  }

  .tab-nav button.active {
    font-weight: bold;
    border-bottom: 2px solid #333;
  }

  .tab-content {
    display: none;
  }

  .tab-content.active {
    display: block;
  }

  .view-block {
    margin-bottom: 2rem;
  }

  .view-block h3 {
    font-size: 1.8rem;
    margin-bottom: 1rem;
    font-weight: bold;
  }

  .view-block p {
    margin-bottom: 1rem;
  }
p.autboor {
    font-weight: 600;
    margin: 2% 0 2%;
}
  .view-block a {
    color: #0066cc;
    text-decoration: none;
    display: inline-block;
    padding: 0.8em 1.2em;
    background: #eee;
    border: 1px solid #ccc;
    transition: background 0.3s, color 0.3s;
  }

  .view-block a:hover {
    background: #333;
    color: #fff;
  }
  .business-contest-section h2 {
    font-size: 1.8rem;
    margin-bottom: 1.5rem;
    font-weight: bold;
}
h3.kanran {
    font-weight: 600;
    margin: 5% 0 5%;
    font-size: 1.6rem;
}
.business-contest-section p {
    margin-bottom: 2rem;
    font-size: 1.4rem;
    line-height: 2.2rem;
    font-weight: 500;
}
.business-contest-section h2 {
    font-size: 1.8rem;
    margin-bottom: 1rem;
    font-weight: bold;
    margin-bottom: 8%;
}
.line01-b {
    width: 100%;
    border-bottom: 1px solid #ccc;
    margin-bottom: 2%;
}
.business-contest-section p {
    margin-bottom: 1rem;
}
  /* PCレイアウト */
  @media (min-width: 768px) {
.business-contest-section h2 {
    font-size: 1.8rem;
    margin-bottom: 1.5rem;
    font-weight: bold;    margin-bottom: 0%;
}
.line01 {
    width: 100%;
    display: inline;
    margin-bottom: 0%;
}
.business-contest-section {
    padding: 6rem 5%;
    max-width: 62%;
    margin: 0 auto;
    background: #f4ffbd;margin-top:4rem;
    border-radius: 20px;
}
.line01-d {
    width: 80%;
    border-bottom: none;
}
    .tab-nav {
      display: none; /* PCではタブ非表示 */
    }

    .business-contest-container {
      display: flex;
      gap: 3rem;
    }

    .view-block {
      width: 100%;
    }

    /* PC向け視覚調整 */
    .tab-content {
        display: block;
        background: #fff;
        border-radius: 20px;
        padding: 35px;
        width: 50%;
        margin-bottom: 2%;
        margin-top: 1%;
    }
    .business-contest-section h2 {
    font-size: 2.6rem;
    margin-bottom: 4%;
    font-weight: bold;
}
.ss {
    background: #fff;
    border-radius: 20px;
    padding: 20px 35px;
}
h3.kanran {
    font-weight: 600;
    font-size: 1.8rem;
    margin: 4% 0 2%;
}
  }
.supporter-marquee {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 2rem 0;
}

.supporter-marquee-track {
    display: flex;
    white-space: nowrap;
}

.supporter-marquee-item {
    display: contents;
    margin-right: 4rem;
}

.supporter-marquee-item img {
    width: 28rem;
    padding: 2.5rem;
    background: #fff;
    border-radius: 20px;
    transition: transform 0.3s ease;
}

.supporter-marquee-item img:hover {
    transform: scale(1.05);
}
.btn.mart {
    text-align: center;
    margin: 2% 0 0;
    width: 100%;
}
    

/* ===== style block boundary ===== */

/* スクロール フェードイン (business-contest / kakimori 2026-06-16) — JS有効時のみ作動 */
.sf-fade { opacity: 0; will-change: opacity, transform; }
.sf-fade.sf-in { animation: sfFloatUp 1.2s cubic-bezier(.22,.61,.36,1) both; }
@keyframes sfFloatUp {
  from { opacity: 0; transform: translateY(48px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes sfFadeOnly { from { opacity: 0; } to { opacity: 1; } }
/* 視差効果を減らす(Reduce Motion)設定でも、動きは抑えつつフェードは必ず効かせる */
@media (prefers-reduced-motion: reduce) {
  .sf-fade.sf-in { animation: sfFadeOnly 0.8s ease both; }
}

/* ===== よくある質問 FAQ アコーディオン (kakimori 2026-06-16) ===== */
#faq { padding: 4% 0 6%; }
#faq .faq-list { max-width: 880px; width: 86%; margin: 3% auto 0; }
.faq-item { background: #fff; border: 2px solid #ffd1e6; border-radius: 16px; margin-bottom: 1.6rem; overflow: hidden; box-shadow: 0 2px 8px rgba(255,154,205,0.12); }
.faq-q { display: flex; align-items: center; gap: 1.2rem; width: 100%; background: #fff; border: none; cursor: pointer; padding: 1.8rem 2rem; text-align: left; font-family: inherit; transition: background .2s ease; }
.faq-q:hover { background: #fff5fa; }
.faq-q-badge { flex: 0 0 auto; width: 2.6rem; height: 2.6rem; border-radius: 50%; background: #f776b8; color: #fff; font-weight: 700; font-size: 1.4rem; display: flex; align-items: center; justify-content: center; }
.faq-q-text { flex: 1; font-size: 1.5rem; font-weight: 600; color: #333; line-height: 1.5; }
.faq-q-mark { flex: 0 0 auto; position: relative; width: 1.4rem; height: 1.4rem; }
.faq-q-mark::before, .faq-q-mark::after { content: ""; position: absolute; background: #f776b8; border-radius: 2px; }
.faq-q-mark::before { top: 50%; left: 0; width: 100%; height: 2px; transform: translateY(-50%); }
.faq-q-mark::after { left: 50%; top: 0; width: 2px; height: 100%; transform: translateX(-50%); transition: opacity .3s ease; }
.faq-item.is-open .faq-q-mark::after { opacity: 0; }
.faq-a { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
.faq-a-inner { padding: 0 2rem 2rem 5.2rem; }
.faq-a-inner p { font-size: 1.4rem; line-height: 1.9; color: #444; margin-bottom: 1rem; }
.faq-a-inner p:last-child { margin-bottom: 0; }
.faq-points { list-style: none; margin: 1rem 0 1.4rem; padding: 0; }
.faq-points li { position: relative; padding-left: 1.4rem; font-size: 1.4rem; line-height: 1.8; color: #444; margin-bottom: .6rem; }
.faq-points li::before { content: ""; position: absolute; left: 0; top: .7em; width: 7px; height: 7px; border-radius: 50%; background: #ffa9d5; }
.faq-points li strong { color: #d6488f; font-weight: 700; }
@media (max-width: 767px) {
  #faq .faq-list { width: 92%; }
  .faq-q { padding: 1.4rem; gap: .9rem; }
  .faq-q-badge { width: 2.2rem; height: 2.2rem; font-size: 1.3rem; }
  .faq-q-text { font-size: 1.4rem; }
  .faq-a-inner { padding: 0 1.4rem 1.6rem 1.4rem; }
  .faq-a-inner p, .faq-points li { font-size: 1.35rem; }
}
