/*
---------------------------------------
pages_index
---------------------------------------
*/

.txt p {
    font-size: 13px;
}

/*** mv ***/
.pl_mv {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}
.pl_mv .inner {
    height: 100%;
}
.pl_mv--inner {
    position: relative;
    height: 100%;
    margin: 0 auto;
}
.pl_mv--item {
    position: absolute;
    top: 26.89655172%;
    left: 0;
}
.pl_mv--logo {
    margin-bottom: 30px;
}
.pl_mv--logo {
    width: 800px;
    margin-right: 35px;
}
.pl_mv--txt--ja {
    font-size: 23px;
    font-weight: 400;
    letter-spacing: 0.2em;
    margin-bottom: 50px;
}
.pl_mv--txt .txt p {
    font-size: 15px;
    line-height: 1.726666;
}
.pl_mv--btn-area {
    position: absolute;
    width: 100%;
    bottom: 70px;
}


.pl_line-area {
    position: absolute;
    width: 60%;
    height: 100%;
    box-sizing: border-box;
    top: 0;
    left: 0;
}

.line {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 0;
    background-color: #fff;
}
.dark-theme .line {
    background-color: #4e575c;
}
.line1 {
    animation: line1 5s;
}
.line2 {
    animation: line2 5s;
}
.line3 {
    animation: line3 5s;
}
.line4 {
    animation: line4 5s;
}
.line5 {
    animation: line5 5s;
}
.line6 {
    animation: line6 5s;
}
.line7 {
    animation: line7 5s;
}
.line8 {
    animation: line8 5s;
}
@keyframes line1 {
    0% { height: 0; opacity: 1; transform: translate3d(0, 0, 0) }
    100% { height: 100%; opacity: 0; transform: translate3d(100px, 0, 0) }
}
@keyframes line2 {
    0% { height: 0; opacity: 1; transform: translate3d(0, 0, 0) }
    100% { height: 100%; opacity: 0; transform: translate3d(-100px, 0, 0) }
}
@keyframes line3 {
    0% { height: 0; opacity: 1; transform: translate3d(0, 0, 0) }
    100% { height: 50%; opacity: 0; transform: translate3d(50px, 0, 0) }
}
@keyframes line4 {
    0% { height: 0; opacity: 1; transform: translate3d(0, 0, 0) }
    100% { height: 50%; opacity: 0; transform: translate3d(-50px, 0, 0) }
}
@keyframes line5 {
    0% { height: 0; opacity: 1; transform: translate3d(0, 0, 0) }
    100% { height: 75%; opacity: 0; transform: translate3d(75px, 0, 0) }
}
@keyframes line6 {
    0% { height: 0; opacity: 1; transform: translate3d(0, 0, 0) }
    100% { height: 75%; opacity: 0; transform: translate3d(-75px, 0, 0) }
}
@keyframes line7 {
    0% { height: 0; opacity: 1; transform: translate3d(0, 0, 0) }
    100% { height: 25%; opacity: 0; transform: translate3d(25px, 0, 0) }
}
@keyframes line8 {
    0% { height: 0; opacity: 1; transform: translate3d(0, 0, 0) }
    100% { height: 25%; opacity: 0; transform: translate3d(-25px, 0, 0) }
}

@media screen and (max-width: 375px) {
    .pl_mv--logo {
        width: 190px;
        margin: 0 auto 4.9261vh;
    }
    .pl_mv--item {
        width: 100%;
        top: 50%;
        left: 50%;
        transform: translate3d(-50%, -50%, 0);
        padding-bottom: 20.0320vh;
    }
    .pl_mv--txt {
        margin-bottom: 7.3891vh;
    }
    .pl_mv--txt--ja {
        font-size: 18px;
        margin-bottom: 4.3103vh;
    }
    .pl_mv--txt .txt p {
        font-size: 13px;
        line-height: 1.75;
        text-align: center;
    }
    .pl_mv--btn-area {
        position: static;
        bottom: auto;
    }
    .pl_mv--scroll {
        position: absolute;
        font-size: 12px;
        font-weight: 300;
        letter-spacing: 0.065em;
        line-height: 1;
        padding-top: 50px;
        bottom: 0;
        left: 50%;
        transform: translate3d(-50%, 0, 0);
    }
    .pl_mv--scroll::before {
        position: absolute;
        display: block;
        content: "";
        width: 1px;
        height: 40px;
        background-color: #2E3539;
        left: 50%;
        top: 0;
    }
    @keyframes circle {
        0% { transform: translate3d(-50%, 0, 0) }
        50% { transform: translate3d(-50%, 31px, 0) }
        100% { transform: translate3d(-50%, 0, 0) }
    }
    .pl_mv--scroll::after {
        position: absolute;
        display: block;
        content: "";
        width: 9px;
        height: 9px;
        top: 0;
        left: 50%;
        transform: translate3d(-50%, 0, 0);
        border-radius: 50%;
        background-color: #2E3539;
        animation: circle 4s linear infinite;
    }
}

/*** concept ***/
.pl_concept {
    position: relative;
    color: #EDEDED;
    background-color: #17171A;
    padding: 110px 0 190px;
    z-index: 10;
}
.pl_concept::before {
    content: "";
    display: block;
    position: absolute;
    width: 1060px;
    height: 545px;
    padding-right: calc((100% - 1280px) / 2);
    right: 0;
    bottom: 0;
    background-image: url("/assets/img/index/concept-01.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}
.pl_concept--inner {
    position: relative;
    padding-left: 60px;
}
.pl_concept--inner .p_ttl--section {
    margin-bottom: 40px;
}
.pl_concept--inner .p_ttl--section--inner {
    transform: translate3d(-60px, 0, 0);
    margin-bottom: 60px;
}
.pl_concept--inner .p_ttl--section .ttl-num::after {
    background-color: #EDEDED;
}
.pl_concept--inner .p_ttl--section .ttl-ja--l {
    line-height: 1.60465116;
}
.pl_concept--inner .txt {
    width: 700px;
}

@media screen and (max-width: 375px) {
    .pl_concept {
        padding: 55px 0 120px;
    }
    .pl_concept::before {
        width: 300px;
        height: 210px;
        background-image: url("/assets/img/index/sp/concept-01.jpg");
        padding: 0;
        bottom: 25px;
    }
    .pl_concept--inner .p_ttl--section {
        margin-bottom: 45px;
    }
    .pl_concept--inner .p_ttl--section--inner {
        transform: none;
        margin-bottom: 40px;
    }
    .pl_concept--inner {
        padding: 0;
    }
    .pl_concept--inner .txt {
        width: 100%;
    }
}

/*** section-wrap ***/
.pl_section-wrap {
    position: relative;
    padding: 0 0 80px;
    background-color: #E0E0E0;
}
.dark-theme .pl_section-wrap {
    background-color: #2E3539;
}
.pl_section-wrap::before {
    content: "";
    position: absolute;
    display: block;
    width: calc(100% - 240px);
    height: calc(100% - 240px);
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    background-color: #E3E3E3;
}
.dark-theme .pl_section-wrap::before {
    background-color: #2E3539;
}

@media screen and (max-width: 375px) {
    .pl_section-wrap {
        padding: 0 0 40px;
    }
    .pl_section-wrap::before {
        display: none;
    }
}

/*** about ***/
.pl_about {
    padding: 110px 0 115px;
}
.pl_about--inner {
    position: relative;
    padding-left: 60px;
}
.pl_about--inner .p_ttl--section {
    margin-bottom: 60px;
}
.pl_about--inner .p_ttl--section--inner {
    transform: translate3d(-60px, 0, 0);
    margin-bottom: 60px;
}
.img-area {
    position: absolute;
    width: 275px;
    right: 45px;
    bottom: -15px;
}
.img-area .img:nth-child(1) {
    width: 114px;
    margin: 0 auto;
}

@media screen and (max-width: 375px) {
    .pl_about {
        padding: 55px 0 60px;
    }
    .pl_about--inner {
        padding: 0;
    }
    .pl_about--inner .p_ttl--section {
        margin-bottom: 45px;
    }
    .pl_about--inner .p_ttl--section--inner {
        transform: none;
        margin-bottom: 40px;
    }
    .pl_about--inner .txt {
        margin-bottom: 50px;
    }
    .img-area {
        position: static;
        width: 225px;
        margin: 0 auto;
    }
    .img-area .img:nth-child(1) {
        width: 56px;
    }
    .img-area .img:nth-child(2) {
        width: 135px;
    }
}

/*** example ***/
.pl_example {
    position: relative;
    padding: 0 0 190px;
}
.pl_example::before {
    content: "";
    position: absolute;
    width: 940px;
    height: 555px;
    background-color: #EDEDED;
    padding-right: calc((100% - 1040px) / 2);
    right: 0;
    bottom: 60px;
}
.dark-theme .pl_example::before {
    background-color: #434B4E;
}
.pl_example--inner {
    position: relative;
    padding-left: 60px;
    z-index: 10;
}
.pl_example--inner .p_ttl--section {
    margin-bottom: 60px;
}
.pl_example--inner .p_ttl--section--inner {
    transform: translate3d(-60px, 0, 0);
    margin-bottom: 60px;
}
.pl_example--item {
    width: 310px;
    margin: 30px 0;
}
.pl_example--item:last-child {
    margin: 0;
}
.pl_example--item .img {
    margin-bottom: 20px;
}
.pl_example--item--ttl > * {
    display: block;
}
.pl_example--item--ttl .ttl-en {
    font-size: 14px;
    font-weight: 300;
    letter-spacing: 0.225em;
    margin-bottom: 15px;
}
.pl_example--item--ttl .ttl-ja {
    font-size: 19px;
    letter-spacing: 0.175em;
    line-height: 1;
}
.ttl-img-label {
    font-size: 12px;
    margin-top: 0.5em;
    display: inline-block;
}
.ttl-img-link {
    font-size: 14px;
    margin-top: 0.5em;
    display: inline-block;
}
.ttl-img-link a {
    text-decoration: underline;
    cursor: pointer;
}
.pl_example--item-area {
    justify-content: space-around;
}

@media screen and (max-width: 375px) {
    .pl_example {
        padding: 0 0 70px;
    }
    .pl_example--inner {
        padding: 0;
    }
    .pl_example--inner .p_ttl--section {
        margin-bottom: 45px;
    }
    .pl_example--inner .p_ttl--section--inner {
        transform: none;
        margin-bottom: 40px;
    }
    .pl_example--item {
        width: 100%;
        margin-right: 0;
        margin-bottom: 40px;
    }
    .pl_example--item .img {
        margin-bottom: 15px;
    }
    .pl_example--item--ttl .ttl-en {
        font-size: 13px;
    }
    .pl_example--item--ttl .ttl-ja {
        font-size: 18px;
    }
    .pl_example::before {
        width: 295px;
        /*height: 712px;*/
        height: 740px;
        padding: 0;
        bottom: 25px;
    }
}

/*** for engineer ***/
.pl_fe {
    position: relative;
    width: 100%;
    max-width: 1100px;
    height: 205px;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0 45px 0 60px;
    border: 5px solid #272C2F;
    background-color: #EDEDED;
    z-index: 10;
}
.dark-theme .pl_fe {
    border-color: #272C2F;
    background-color: #272C2F;
}
.pl_fe--inner .p_ttl--section .ttl-en {
    margin-bottom: 20px;
}
.pl_fe--inner .p_ttl--section .ttl-ja {
    font-size: 24px;
}
@media screen and (max-width: 375px) {
    .pl_fe {
        max-width: 335px;
        padding: 30px 25px 25px;
        border: 2px solid #272C2F;
    }
    .pl_fe--inner .p_ttl--section {
        width: 100%;
        text-align: center;
        margin-bottom: 25px;
    }
    .pl_fe--inner .p_ttl--section .ttl-en {
        font-size: 14px;
        margin-bottom: 20px;
    }
    .pl_fe--inner .p_ttl--section .ttl-ja {
        font-size: 16px;
        line-height: 1.625;
    }
    .pl_fe--inner .p_btn {
        font-size: 12px;
    }

}

/*** features ***/
.pl_features {
    position: relative;
    padding: 110px 0 90px;
    background-color: #EDEDED;
}
.dark-theme .pl_features {
    background-color: #272C2F;
}
.pl_features::before {
    content: "";
    position: absolute;
    width: calc(100% - 240px);
    height: calc(100% - 240px);
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    background-color: #E3E3E3;
}
.dark-theme .pl_features::before {
    background-color: #272C2F;
}
.pl_features--inner,
.pl_redbox {
    position: relative;
    z-index: 10;
}
.pl_features--inner .p_ttl--section {
    margin-bottom: 50px;
}
.pl_features--inner .p_ttl--section--inner {
    margin-bottom: 60px;
}
.pl_features--inner .ttl-ja {
    padding-left: 60px;
}
.pl_redbox {
    max-width: 1040px;
    height: 170px;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #EDEDED;
    background-color: #E24934;
    padding: 0 calc((100% - 1100px) / 2) 0 60px;
    margin: 0 0 70px auto;
    box-sizing: content-box;
}
.pl_features--left {
    width: 550px;
}
.pl_features--item {
    width: 265px;
    height: 265px;
    background-color: #434B4E;
    /*padding-top: 150px;*/
    margin-bottom: 25px;
}
.pl_features--item--img {
    width: 140px;
    height: 70px;
    margin: 0 auto 35px;
}
.pl_features--item:nth-child(1) .pl_features--item--img img {
    height: 56px;
}
.pl_features--item:nth-child(2) .pl_features--item--img img {
    height: 63px;
}
.pl_features--item:nth-child(3) .pl_features--item--img img {
    height: 49px;
}
.pl_features--item:nth-child(4) .pl_features--item--img img {
    height: 56px;
}
.pl_features--item:nth-child(5) .pl_features--item--img img {
    height: 100%;
}
.pl_features--item:nth-child(6) .pl_features--item--img img {
    height: 51px;
}

.pl_features--item:nth-last-child(-n + 2) {
    margin-bottom: 0;
}
.pl_features--item--inner {
    width: 100%;
}
.pl_features--item--ttl {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-align: center;
    color: #EDEDED;
    margin-bottom: 20px;
}
.pl_features--item--txt {
    font-size: 12px;
    letter-spacing: 0.075em;
    line-height: 1.6;
    text-align: center;
    color: #EDEDED;
}
.pl_features--item {
    background-repeat: no-repeat;
}
/*
.pl_features--item:nth-child(1) {
    background-size: auto 56px;
    background-position: top 50px center;
}
.pl_features--item:nth-child(2) {
    background-size: auto 63px;
    background-position: top 50px center;
}
.pl_features--item:nth-child(3) {
    background-size: auto 49px;
    background-position: top 58px center;
}
.pl_features--item:nth-child(4) {
    background-size: auto 56px;
    background-position: top 55px center;
}
.pl_features--item:nth-child(5) {
    background-size: auto 70px;
    background-position: top 47px center;
}
.pl_features--item:nth-child(6) {
    background-size: auto 51px;
    background-position: top 57px center;
}
*/
@media screen and (max-width: 375px) {
    .pl_features {
        padding: 55px 0 50px;
    }
    .pl_features::before {
        width: calc(100% - 20px);
        height: calc(100% - 20px);
    }
    .pl_features--inner .p_ttl--section {
        margin-bottom: 35px;
    }
    .pl_features--inner .p_ttl--section--inner {
        margin-bottom: 40px;
    }
    .pl_features--inner .ttl-ja {
        padding: 0;
    }
    .pl_redbox {
        width: 330px;
        height: 85px;
        font-size: 16px;
        padding: 0 0 0 25px;
        margin: 0 0 25px auto;
    }
    .pl_features--left {
        width: 100%;
        margin-bottom: 40px;
    }
    .pl_features--item {
        width: 100%;
        height: 100px;
        margin-bottom: 5px;
    }
    .pl_features--item--inner {
        width: calc(100% - 100px);
    }
    .pl_features--item--img {
        width: 100px;
        height: 100px;
        margin: 0;
    }
    .pl_features--item:nth-child(1) .pl_features--item--img img {
        height: 60px;
    }
    .pl_features--item:nth-child(2) .pl_features--item--img img {
        height: 41px;
    }
    .pl_features--item:nth-child(3) .pl_features--item--img img {
        height: 41px;
    }
    .pl_features--item:nth-child(4) .pl_features--item--img img {
        height: 35px;
    }
    .pl_features--item:nth-child(5) .pl_features--item--img img {
        height: 40px;
    }
    .pl_features--item:nth-child(6) .pl_features--item--img img {
        height: 33px;
    }

    .pl_features--item:nth-last-child(-n + 2) {
        margin-bottom: 5px;
    }
    .pl_features--item:last-child {
        margin-bottom: 0;
    }
    .pl_features--item--ttl {
        font-size: 13px;
        margin-bottom: 10px;
        text-align: left;
    }
    .pl_features--item--txt {
        text-align: left;
    }
}

/*** quick start ***/
.pl_qs {
    width: 505px;
}
.pl_qs--ttl {
    font-size: 24px;
    font-weight: 300;
    letter-spacing: 0.225em;
    line-height: 1;
    margin-bottom: 45px;
}
.pl_qs--item {
    margin-bottom: 35px;
}
.pl_qs--item:last-child {
    margin-bottom: 0;
}
.pl_qs--item--ttl {
    padding-bottom: 10px;
    border-bottom: 1px solid #4E575C;
    margin-bottom: 25px;
}
.pl_qs--item--ttl .ttl-num {
    font-size: 26px;
    font-weight: 500;
    letter-spacing: 0.075em;
    margin-right: 25px;
    line-height: 1;
    padding-bottom: 5px;
}
.pl_qs--item--ttl .ttl-ja {
    font-size: 21px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1;
}
.pl_qs--item .txt p {
    font-size: 16px;
}

@media screen and (max-width: 375px) {
    .pl_qs {
        width: 100%;
    }
    .pl_qs--ttl {
        font-size: 13px;
        margin-bottom: 25px;
    }
    .pl_qs--item {
        margin-bottom: 30px;
    }
    .pl_qs--item--ttl {
        padding-bottom: 8px;
        margin-bottom: 20px;
    }
    .pl_qs--item--ttl .ttl-num {
        font-size: 19px;
        padding-bottom: 7px;
        margin-right: 15px;
    }
    .pl_qs--item--ttl .ttl-ja {
        font-size: 15px;
    }
    .pl_qs--item .txt p {
        font-size: 13px;
    }
}

/*** integration ***/
.pl_integration {
    background-color: #F8F8F8;
    padding: 80px 0 100px;
}
.dark-theme .pl_integration {
    background-color: #2E3539;
}
.pl_integration .p_ttl--section {
    margin-bottom: 60px;
}
.pl_integration .p_ttl--section--inner {
    margin-bottom: 30px;
}
.pl_integration--item .img {
    width: 271px;
    max-height: 80%;
    margin: auto;
    padding: 36px;
}
.pl_integration--item .img a {
    display: block;
    transition: opacity .4s;
}
.pl_integration--item .img a:hover {
    opacity: .75;
}

@media screen and (max-width: 375px) {
    .pl_integration {
        padding: 55px 0;
    }
    .pl_integration .p_ttl--section {
        margin-bottom: 25px;
    }
    .pl_integration .p_ttl--section--inner {
        margin-bottom: 15px;
    }
    .pl_integration--item .img {
        width: 165px;
    }
}

/*** case ***/
.pl_case {
    padding: 80px 0 0;
}
.pl_case .p_ttl--section {
    margin-bottom: 60px;
}
.pl_case .p_ttl--section--inner {
    margin-bottom: 30px;
}

.pl_case--inner {
    padding-bottom: 60px;
}
.pl_case--item-area {
    padding-bottom: 55px;
    margin-bottom: 0!important;
}
.pl_case--item-area .slick-dotted.slick-slider {
    margin: 0 auto;
}
.pl_case--item-area .slick-slide {
    width: 980px;
    height: 420px;
}
.pl_case--item-area .slick-slide > div {
    height: 100%;
}
.pl_case--item-area .slick-dots {
    line-height: 0;
    bottom: 0;
}
.pl_case--item-area .slider--prev {
    left: -60px;
}
.pl_case--item-area .slider--next {
    right: -60px;
    transform: translate3d(0, -50%, 0) scale(-1, 1);
}
.pl_logo-area {
    /*width: calc(100% - 75px);*/
    /*margin: 0 auto 0 0;*/
    background-color: #fff;
    padding: 55px 0;
}
.dark-theme .pl_logo-area{
    background-color: #18181b;
}
.pl_logo-area--inner {
    width: 380px;
    margin: 0 auto;
}
.pl_logo-area .slick-slide {
    line-height: 0;
}
.pl_logo--item {
    width: auto!important;
    margin: 0 25px;
}
.pl_logo--item a {
    display: block;
}
.pl_logo--item img {
    height: 40px;
}

@media screen and (max-width: 375px) {
    .pl_case {
        padding: 55px 0;
    }
    .pl_case .p_ttl--section {
        margin-bottom: 25px;
    }
    .pl_case .p_ttl--section--inner {
        margin-bottom: 15px;
    }
    .pl_case--inner {
        padding-bottom: 0;
    }
    .pl_case--item-area {
        padding-bottom: 30px;
    }
    .pl_case--item-area .slick-slide {
        width: 335px;
        height: auto;
    }
    .slick-dots li {
        width: 10px;
        height: 10px;
        margin: 0 7px;
    }
    .slick-dots li button {
        width: 10px;
        height: 10px;
    }
}

/*** price ***/
.pl_price {
    padding: 100px 0 130px;
    background-color: #E24934;
}
.dark-theme .pl_price {
    background-color: #272C2F;
}
.pl_price * {
    color: #EDEDED;
}
.pl_price--head {
    text-align: center;
}
.pl_price .p_ttl--section {
    margin-bottom: 30px;
}
.pl_price .p_ttl--section--inner  {
    margin-bottom: 30px;
}
.pl_price .p_ttl--section .ttl-num::after {
    background-color: #EDEDED;
}
.pl_price--inner .pl_price--head {
    margin-bottom: 145px;
}
.pl_price--item {
    margin-bottom: 55px;
}
.pl_price--item--left li {
    position: relative;
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1;
    padding-left: 48px;
    margin-bottom: 25px;
}
.pl_price--item--left li .icon-check {
    position: absolute;
    font-size: 20px;
    color: #EDEDED;
    top: 50%;
    left: 0;
    transform: translate3d(0, -50%, 0);
}
.pl_price--item--left li:last-child {
    margin-bottom: 0;
}
.pl_price--item--right {
    font-size: 66px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    margin-left: 15px;
}
.pl_price--item--right .din {
    font-size: 350px;
    font-weight: 600;
    line-height: 0;
    transform: translate3d(0, 20px, 0);
}
.pl_price--box {
    display: table;
    width: 820px;
    border: 3px solid #EDEDED;
    padding: 0 40px 30px;
    margin: 0 auto;
}
.pl_price--box > * {
    display: table-cell;
    vertical-align: middle;
}
.pl_price--box--ttl {
    font-size: 27px;
    font-weight: 700;
    letter-spacing: 0.075em;
    text-align: center;
    border-bottom: 2px solid #EDEDED;
    margin-bottom: 25px;
}
.pl_price--box--ttl .din {
    font-size: 79px;
    font-weight: 600;
}
.pl_price--box .txt p {
    font-size: 14px;
    text-align: center;
}

@media screen and (max-width: 375px) {
    .pl_price {
        padding: 55px 0;
    }
    .pl_price--inner .pl_price--head {
        margin-bottom: 95px;
    }
    .pl_price .p_ttl--section {
        margin-bottom: 25px;
    }
    .pl_price .p_ttl--section--inner {
        margin-bottom: 15px;
    }
    .pl_price--item {
        margin-bottom: 40px;
    }
    .pl_price--item--left li {
        font-size: 16px;
        padding-left: 30px;
        margin-bottom: 15px;
    }
    .pl_price--item--left li .icon-check {
        font-size: 13px;
    }
    .pl_price--item--right .din {
        font-size: 212px;
        transform: translate3d(0, 5px, 0);
    }
    .pl_price--item--right {
        font-size: 40px;
        margin-left: 0;
    }
    .pl_price--box {
        width: 100%;
        padding: 0 10px 25px;
    }
    .pl_price--box--ttl {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .pl_price--box--ttl .din {
        font-size: 55px;
    }
    .pl_price--box .txt p {
        font-size: 11px;
        text-align: left;
    }
}

/*** faq ***/
.pl_faq {
    padding: 110px 0 120px;
}
.pl_faq .p_ttl--section {
    margin-bottom: 60px;
}
.pl_faq .p_ttl--section--inner {
    margin-bottom: 30px;
}
.pl_faq--item-area {
    border-top: 1px solid #26292B;
}
.dark-theme .pl_faq--item-area {
    border-color: #EDEDED;
}
.pl_faq--item {
    border-bottom: 1px solid #26292B;
    padding: 40px 30px 35px;
}
.dark-theme .pl_faq--item {
    border-color: #EDEDED;
}
.pl_faq--item--question {
    position: relative;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.05em;
}
.pl_faq--item--trigger {
    position: absolute;
    display: block;
    width: 17px;
    height: 17px;
    top: 50%;
    right: 0;
    transform: translate3d(0, -50%, 0);
}
.pl_faq--item--trigger::before,
.pl_faq--item--trigger::after {
    display: block;
    position: absolute;
    content: "";
    width: 100%;
    height: 3px;
    background-color: #26292B;
    top: 50%;
    left: 50%;
    transition: transform .4s;
}
.dark-theme .pl_faq--item--trigger::before,
.dark-theme .pl_faq--item--trigger::after {
    background-color: #EDEDED;
}
.pl_faq--item--trigger::before {
    transform: translate3d(-50%, -50%, 0);
}
.pl_faq--item--trigger::after {
    transform: translate3d(-50%, -50%, 0) rotate(90deg);
}
.pl_faq--item.active .pl_faq--item--trigger::before {
    transform: translate3d(-50%, -50%, 0) rotate(180deg);
}
.pl_faq--item.active .pl_faq--item--trigger::after {
    transform: translate3d(-50%, -50%, 0) rotate(360deg);
}
.pl_faq--item--answer {
    position: relative;
    display: none;
    padding: 45px 0 35px;
    margin: 55px 0 0;
    opacity: 0;
    transition: opacity .4s;
}
.pl_faq--item.active .pl_faq--item--answer {
    opacity: 1;
}
.pl_faq--item--answer::before {
    position: absolute;
    content: "";
    display: block;
    width: 32px;
    height: 1px;
    background-color: #26292B;
    top: 8px;
    left: 0;
}
.pl_faq--item--answer::after {
    position: absolute;
    content: "ANSWER";
    font-family: sofia-pro, sans-serif;
    font-size: 17px;
    font-weight: 300;
    letter-spacing: 0.225em;
    line-height: 1;
    color: #26292B;
    top: 0;
    left: 50px;
}
.dark-theme .pl_faq--item--answer::after {
    color: #EDEDED;
}
.pl_faq--item--answer p {
    font-size: 18px;
    line-height: 1.6;
    padding-left: 50px;
}

@media screen and (max-width: 375px) {
    .pl_faq {
        padding: 55px 0;
    }
    .pl_faq .p_ttl--section {
        margin-bottom: 25px;
    }
    .pl_faq .p_ttl--section--inner {
        margin-bottom: 15px;
    }
    .pl_faq--item {
        padding: 25px 10px;
    }
    .pl_faq--item--question {
        font-size: 15px;
        line-height: 1.92;
        padding-right: 30px;
    }
    .pl_faq--item--trigger {
        width: 13px;
        height: 13px;
    }
    .pl_faq--item--answer {
        padding: 40px 0 0;
        margin: 30px 0 0;
    }
    .pl_faq--item--answer::before {
        width: 20px;
        top: 8px;
        left: 0;
    }
    .pl_faq--item--answer::after {
        font-size: 15px;
        left: 30px;
    }
    .pl_faq--item--answer p {
        font-size: 13px;
        padding: 0;
    }
}

/*** mission ***/
.pl_mission {
    position: relative;
    padding: 110px 0 100px;
    background-color: #969A9C;
}
.dark-theme .pl_mission {
    background-color: #17171A;
}
.pl_mission * {
    color: #EDEDED;
}
.pl_mission .outer {
    position: relative;
    z-index: 10;
}
.pl_mission .p_ttl--section {
    margin-bottom: 125px;
}
.pl_mission .p_ttl--section .ttl-num::after {
    background-color: #EDEDED;
}
.pl_mission .p_ttl--section .ttl-ja--l {
    text-align: center;
}
.pl_mission--item {
    width: 700px;
}
.pl_mission--item--ttl {
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1;
    margin-bottom: 40px;
}
.pl_mission--bg-txt {
    position: absolute;
    width: 100%;
    height: 349px;
    overflow: hidden;
    bottom: 265px;
}
.pl_mission--bg-txt p {
    position: absolute;
    font-size: 349px;
    font-weight: 700;
    letter-spacing: 0.125em;
    line-height: 1;
    color: #909598;
    white-space: nowrap;
    animation: flowing 20s linear infinite;
    top: 0;
    right: 0;
}
.dark-theme .pl_mission--bg-txt p {
    color: #101214;
}
@keyframes flowing {
    0% {
        transform: translate3d(100%, 0, 0);
    }
    100% {
        transform: translate3d(-50%, 0, 0);
    }
}

@media screen and (max-width: 375px) {
    .pl_mission {
        padding: 55px 0;
    }
    .pl_mission .p_ttl--section {
        margin-bottom: 70px;
    }
    .pl_mission .p_ttl--section--inner {
        margin-bottom: 50px;
    }
    .pl_mission .p_ttl--section .ttl-ja--l {
        font-size: 21px;
    }
    .pl_mission--item {
        width: 100%;
    }
    .pl_mission--item--ttl {
        font-size: 18px;
    }
    .pl_mission--bg-txt {
        height: 162px;
        bottom: 195px;
    }
    .pl_mission--bg-txt p {
        font-size: 125px;
    }
}

/*** news ***/
.pl_news {
    padding: 110px 0 0;
}
.pl_news .p_ttl--section {
    margin-bottom: 70px;
}
.pl_news .p_ttl--section--inner {
    margin-bottom: 30px;
}
.pl_news--inner {
    width: 1100px;
    margin: 0 30px 0 auto;
}
.l_news--item-area .slick-slide {
    width: 360px;
    margin: 0 5px;
}
.l_news--item-area .slider--prev {
    left: -45px;
}
.l_news--item-area .slider--next {
    display: none!important;
}

@media screen and (max-width: 375px) {
    .pl_news {
        padding: 55px 0 0;
    }
    .pl_news .p_ttl--section {
        margin-bottom: 25px;
    }
    .pl_news .p_ttl--section--inner {
        margin-bottom: 15px;
    }
    .pl_news--inner {
        width: 335px;
        margin: 0 auto;
    }
    .l_news--item-area .slick-slide {
        width: 335px;
    }
}

/*** company ***/
.pl_company {
    padding: 120px 0 170px;
}
.pl_company .p_ttl--section {
    margin-bottom: 60px;
}
.pl_company .p_ttl--section--inner {
    margin-bottom: 30px;
}
.pl_company--item-area {
    border-top: 1px solid #26292B;
}
.dark-theme .pl_company--item-area {
    border-color: #4E575C;
}
.pl_company--item {
    padding: 45px 0 45px 30px;
    border-bottom: 1px solid #26292B;
}
.dark-theme .pl_company--item {
    border-color: #4E575C;
}
.pl_company--item > *{
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1.6;
}
.pl_company--item dt {
    width: 160px;
}

@media screen and (max-width: 375px) {
    .pl_company {
        padding: 55px 0;
    }
    .pl_company .p_ttl--section {
        margin-bottom: 25px;
    }
    .pl_company .p_ttl--section--inner {
        margin-bottom: 15px;
    }
    .pl_company--item {
        padding: 25px 0 25px 10px;
    }
    .pl_company--item > * {
        font-size: 13px;
    }
    .pl_company--item dt {
        width: 105px;
    }
}

.news-card {
    display: flex;
    flex-flow: wrap;
    margin: 1em;
}

.news-card > * {
    margin-top: 1em;
}

.news-card > time {
    color: #8d8d8d;
    width: 11em;
    letter-spacing: .2em;
}

.news-card > p {
    color: #393939;
    margin-left: 20px;
    font-weight: 500;
    max-width: 55em;
}

.more-button {
  text-align: center;
  margin-top: 30px;
}

.more-button > a {
  font-size: 20px;
  letter-spacing: .1em;
  padding: 10px 20px;
  text-decoration: underline;
  text-decoration-thickness: from-font;
  text-underline-offset: 10px;
}

#more-button {
    font-size: 20px;
    letter-spacing: .1em;
    padding: 10px 20px;
    text-decoration: underline;
    text-decoration-thickness: from-font;
    text-underline-offset: 10px;
    cursor: pointer;
}

#rest-news {
    display: none;
}

.example-img { 
    max-height: 250px;
    object-fit: scale-down;
}