@charset "UTF-8";

.factory-inner {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 4%;
}

.factory-inner figure {
    max-width: 800px;

}

.factory-inner figure img {
    width: 100%;
    height: auto;
}

.factory-text {
    margin: 30px 0 60px 0;
}

.factory-block {
    border-bottom: solid 2px #808080;
    position: relative;
    margin-bottom: 118px;
}


.factory-block:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: 2px solid;
    border-image: linear-gradient(to right, #F5A52C 0%, #EC4451 100%);
    border-image-slice: 1;
    bottom: -1.5px;
    width: 20%;
}


.swiper--wrapper {
    /* wrapperのサイズを調整 */
    width: 100%;
    height: 300px;
}

.swiper-slide {
    /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
    color: #ffffff;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 300px;
}

.swiper-slide:nth-child(3n + 1) {
    /*1、4、7、3n+1枚目の背景色 */
    background-color: #de4439;
}

.swiper-slide:nth-child(3n + 2) {
    /*2、5、8、3n+2枚目の背景色 */
    background-color: #fcd500;
}

.swiper-slide:nth-child(3n + 3) {
    /*3、6、9、3n+3枚目の背景色 */
    background-color: #53c638;
}

.swiper-button-next {
    position: absolute;
}

.swiper-button-prev {
    position: absolute;
}

.swiper-button-next:after {
    content: "";
    position: absolute;
    width: 35px;
    /* 背景画像の幅を必ず指定 */
    height: 35px;
    /* 背景画像の高さを必ず指定 */
    top: 50%;
    transform: translateY(-50%);
}

.swiper-button-prev:after {
    content: "";
    position: absolute;
    width: 35px;
    /* 背景画像の幅を必ず指定 */
    height: 35px;
    /* 背景画像の高さを必ず指定 */
    top: 50%;
    transform: translateY(-50%);
}

.swiper-button-next {
    right: 5px;
}

/* 次へ矢印の背景画像 */

.swiper-button-next::after {
    background: transparent url(../img/right-arrow.png) no-repeat center / contain;
}

.swiper-button-prev {
    left: 5px;
}

/* 前へ矢印の背景画像 */
.swiper-button-prev::after {
    background: transparent url(../img/left-arrow.png) no-repeat center / contain;
}

.access__container {
    max-width: 800px;
    padding: 0 4% 134px 4%;
    margin: 0 auto;
}

.access__inner {
    display: flex;
    justify-content: space-between;

}

.access__left figure {
    width: 340px;
    padding-bottom: 50px;
}

.access__left figure img {
    width: 100%;
}

.dli-caret-right {
    display: inline-block;
    vertical-align: middle;
    color: #C52A3C;
    line-height: 1;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    border-width: 0.375em 0.64952em;
    border-left-color: currentColor;
    border-right: 0;
}

.access-right {
    width: 405px;
}

.access-list__inner {
    display: flex;
    align-items: baseline;
    column-gap: 10px;
    border-bottom: 1px solid #CCCCCC;
    margin-bottom: 8px;
    padding-bottom: 8px;
}

.access-list__lead {
    font-weight: bold;
}

.top-h2 {
    font-size: 38px;
    font-weight: bold;
    padding-top: 35px;
    padding-bottom: 75px;
    max-width: 800px;
    margin: 0 auto;

}

.top-h2 span {
    font-size: 14px;
    font-weight: normal;
    margin-left: 10px;

}


@media screen and (max-width: 768px) {
.factory-block {
    border-bottom: solid 2px #808080;
    position: relative;
    margin-bottom: 65px;
}

.factory-text {
    margin: 10px 0 60px 0;
}

.access__container {
    max-width: 800px;
    padding: 0 4% 75px 4%;
    margin: 0 auto;
}

.access__inner {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    row-gap: 30px;
}


.access__left figure {
    width: 100%;
    padding-bottom: 30px;
}

.access__left figure img {
    width: 100%;
}

.dli-caret-right {
    display: inline-block;
    vertical-align: middle;
    color: #C52A3C;
    line-height: 1;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent;
    border-width: 0.375em 0.64952em;
    border-left-color: currentColor;
    border-right: 0;
}

.access-right {
    width: 100%;
}

.access-list__inner {
    display: flex;
    align-items: baseline;
    column-gap: 10px;
    border-bottom: 1px solid #CCCCCC;
    margin-bottom: 8px;
    padding-bottom: 8px;
}

.access-list__lead {
    font-weight: bold;
}


.top-h2 {
    font-size: 31px;
    font-weight: bold;
    padding-top: 50px;
    padding-bottom: 45px;
    max-width: 800px;
    margin: 0 auto;

}


.merits-h2 span {
    font-size: 13px;
    font-weight: normal;
    margin-left: 10px;

}


}