@charset "UTF-8";
.l-hero { position: relative; }
.l-hero img { width: 100%; }
.c-hero__ttl { position: absolute; top: 50%; transform: translateY(-50%); color: #fff; text-align: left; }
.c-hero__ttl span { background: linear-gradient(90deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.7) 47%, rgba(29, 63, 80.7, 1) 100%); padding: 1em 1.5em; display: block; line-height: 1.5; font-weight: 600; }
.c-ttl a { position: absolute; right: 0; }
.js-accordion-section { text-align: left; }
.js-accordion-section ul { margin-bottom: 2em; padding-left: 1em}
.js-accordion-section li { position: relative; margin-bottom: 0.5em; padding-left: 1.5em }
.js-accordion-section li::before { position: absolute; content: ''; width: 0.75em; height: 1px; background-color: #CFCFCF; top:1em; left:0; }
.js-accordion-section .c-ttl { color: #fff; text-align: left; }
.l-product .c-inner ul { font-size: 1.125em; border-bottom: 1px solid #CECECE; padding-bottom: 1.5em; }
.l-product .c-inner ul:last-of-type { border: none; padding-bottom: 0; }
.l-product .c-inner li span { font-size: 0.8em; }
.c-ttl__product { font-weight: 600; margin-bottom: 0.5em;}
.c-ttl__top { display: inline-flex; align-items: flex-end; }
.c-ttl__top span { font-size: 0.571em; margin-left: 1em;}
/*.l-news__ttl.c-ttl__line { color: #333; }*/
@media screen and (min-width:768px) {
    .c-hero__ttl { left: 7%; font-size: 1.438em; }
    .c-ttl a { font-size: 0.875em; top: 1.2em; }
    .l-news__box a:hover dd { text-decoration: underline; }
    .l-product  { position: relative; display: flex; }
    .l-product .c-parallax__img { position: -webkit-sticky; position: sticky; top: 0; width: 45%; height: 100vh; background: url(../img/bg-product.webp) no-repeat center / cover; }
    .l-product .c-parallax__img .c-ttl { position: static; margin: 3em 0 0 3em; }
    .l-product .c-inner { max-width: 100%; width: 55%; padding: 4em 5em; background: #f2f2f2; }
    .l-product .c-inner .c-ttl__product { font-size: 1.125em }
    .js-accordion-section li a:hover { text-decoration: underline; }
    .c-ttl__top { font-size: 1.75em; }
    .l-development { background: url(../img/bg-development.webp) no-repeat center / cover; padding: 5em 3em }
    .l-development a { color: #fff; }
    .l-development .c-ttl__box, .l-development .c-inner { max-width: 75em; width: 100%; margin: 0 auto; }
    .l-development .c-ttl { margin-bottom: 3em; border-bottom: 1px solid #fff; padding-bottom: 1em; }
    .l-development .c-inner ul { display: flex; justify-content:flex-start; align-items:stretch; flex-wrap: wrap; padding-left: 0;  }
    .l-development .c-inner li { width: 25%;  }
}
@media screen and (min-width:768px) and (max-width:1120px) { }
@media screen and (max-width:767px) {
    .c-hero__ttl { left: 50%; font-size: 0.85em; transform: translate(-50%, -50%); width: 90%; }
    .c-hero__ttl span { padding: 1.5em; line-height: 1.7; }
    .l-product .c-ttl__box { background: url(../img/sp/bg-product.jpg) no-repeat center / 100%; padding: 2em 0; }
    .c-ttl__product { font-size: 1.286em; }
    .js-accordion-section .c-ttl { background: linear-gradient(90deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.7) 47%, rgba(29, 63, 80.7, 1) 100%); padding: 1.5em; }
    .js-accordion-section .c-ttl button { position: absolute; top: 50%; right: 0.5em; transform: translate(0,-50%); font-size: 1.8em; ransition: all .3s ease; }
    .js-accordion-section .c-ttl button.is-open { transform: translate(0, -50%) rotateX(180deg) rotateZ(0deg); }
    .js-accordion-section .c-inner { padding: 2em 5%; }
    .js-accordion-section li { margin-bottom: 0.8em; }
    .l-product .c-inner .c-ttl__product { font-size: 1.286em; font-weight: 600; }
    .l-development .c-ttl__box { background: url(../img/sp/bg-development.jpg) no-repeat center / 100%; padding: 2em 0; }
    .c-ttl__top { font-size: 1.429em; }
}
