@charset "UTF-8";
/* service ondemand CSS */
.sec-ondemand{
    container-type: inline-size;
    container-name: ondemand;
}

/* ondemand */
.ondemand-point{
    gap: 40px;
    align-items: center;
}
.txt-area{
    flex: 1;
}
.img-area{
    width: 320px;
}
.item-ttl{
    border-bottom: 2px solid #009ceb;
    padding-bottom: 5px;
    margin-bottom: 20px;
}

@container ondemand (max-width: 730px) {
    .ondemand-point{
        gap: 25px;
    }
    .img-area {
        width: 250px;
    }
}
@container ondemand (max-width: 620px) {
    .txt-area{
        flex: auto;
    }
    .img-area {
        width: 360px;
        margin: 0 auto;
    }
}

/* smalllot-list */
.smalllot-item-ttl{
    padding-bottom: 5px;
    border-bottom: 2px solid var(--color-border);
    margin-bottom: 20px;
}

.smalllot-list{
    gap: 20px 30px;
}

.smalllot-link{
    display: block;
    width: calc(50% - 15px);
    border-radius: 10px;
    box-shadow: 1px 1px 10px rgb(0 0 0 / 10%);
    padding: 15px 10px 15px 180px;    

    background-image: url(../../img/service/bg-ondemand-back-blue.svg);
    background-repeat: no-repeat;
    overflow: hidden;
    position: relative;
}
.smalllot-link::before{
    content: "";
    display: block;
    width: 180px;
    height: 180px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
}
.smalllot-link.naga3::before{
    background-image: url(../../img/service/img-ondemand_naga3.png);
}
.smalllot-link.naga3mado::before{
    background-image: url(../../img/service/img-ondemand_naga3mado.png);
}
.smalllot-link.kaku2::before{
    background-image: url(../../img/service/img-ondemand_kaku2.png);
}

.smalllot-listitem>dt{
    gap: 5px;
    justify-content: center;
    padding-bottom: 15px;
    position: relative;
}
.smalllot-listitem>dt::before{
    content: "";
    display: block;
    width: calc(100% + 200px);
    height: 1px;
    background-image: linear-gradient(to left, #1ec8ee 50%, transparent 50%);
    background-size: 2px 1px;
    background-repeat: repeat-x;
    position: absolute;
    bottom: 7px;
    right: 0;
}

.lot-num{
    display: flex;
    align-items: center;
}
.lot-num::after{
    content: "枚～";
    font-size: 70%;
    font-family: Hiragino Sans, 'ヒラギノ角ゴ ProN W3', Hiragino Kaku Gothic ProN,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

.smalllot-ttl-right-top{
    padding-bottom: 5px;
}
.smalllot-ttl-right-bottom{
    background-color: var(--color-sub);
    padding: 5px 10px 3px;
    border-radius: 100px;
}

.price-num{
    letter-spacing: -0.05em;
    width: fit-content;
    margin: 0 auto;
    padding-top: 10px;
}
.price-num::before{
    content: "@";
    font-size: 60%;
}
.price-num::after{
    content: "円(税込)～";
    font-size: 50%;
    letter-spacing: 0;
    padding-left: 5px;
}

@media (min-width: 768px) {
    .smalllot-link{
        transition: all 0.3s ease;
    }
    .smalllot-link:hover {
        box-shadow: 8px 8px 15px rgba(0, 0, 0, 0.1);
        transform: translateY(-2px);
    }
}

@container ondemand (max-width: 850px) {
    .smalllot-link{
        padding: 15px 10px 15px 130px;
    }
    .smalllot-link::before{
        width: 130px;
        height: 130px;
    }
}

@container ondemand (max-width: 750px) {
    .smalllot-link{
        padding: 180px 10px 15px;
    }
    .smalllot-link::before{
        width: 180px;
        height: 180px;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .smalllot-listitem>dt::before {
        width: calc(100% + 30px);
        bottom: 7px;
        right: 50%;
        transform: translateX(50%);
    }
}

@container ondemand (max-width: 500px) {
    .smalllot-list {
        gap: 10px;
    }
    .smalllot-link {
        width: calc(50% - 5px);
    }
}

@container ondemand (max-width: 450px) {
    .smalllot-link {
        padding: 130px 10px 15px;
    }
    .smalllot-link::before {
        width: 130px;
        height: 130px;
    }
    .smalllot-ttl-left{
        width: 100%;
        text-align: center;
    }
}

@container ondemand (max-width: 360px) {
    .smalllot-link {
        width: 100%;
        padding: 15px 10px 15px 130px;
    }
    .smalllot-link::before {
        top: 50%;
        left: 0;
        transform: translateY(-50%);
    }
    .smalllot-ttl-left{
        width: auto;
        text-align: left;
    }
    .smalllot-listitem>dt::before {
        width: calc(100% + 30px);
        bottom: 7px;
        right: 0%;
        transform: none;
    }
}