body[data-id="top"],
body[data-id="setup"],
body[data-id="utilizing"] {
    color: #1A1C21;
    font-family: "u30d2u30e9u30aeu30ceu89d2u30b4 Pro W3", "Hiragino Kaku Gothic Pro", "u30e1u30a4u30eau30aa", Meiryo, "uff2duff33 uff30u30b4u30b7u30c3u30af", "MS PGothic", sans-serif;
    letter-spacing: initial;
}

body[data-id="top"] * {
    box-sizing: border-box;
}
/* shared/css/style.css, css/column.cssを一部上書き */
#main p {
    margin-bottom: 0;
}

table td, table th {
    text-align: center;
}

sub, sup {
    line-height: initial;
    margin-right: initial;
}

body[data-id="top"] #main picture.icon-blank,
body[data-id="setup"] #main picture.icon-blank,
body[data-id="utilizing"] #main picture.icon-blank {
    display: none;
}

.media {
    margin-bottom: 0;
}

.hdg1-01::before {
    background: initial;
}

@media only screen and (max-width: 768px) {
    #main {
        padding-bottom: 0;
    }
}

/*共通項目*/
body[data-id="top"] #main,
body[data-id="setup"] #main,
body[data-id="utilizing"] #main {
    margin-top: 70px; /* ヘッダーの高さ */
}

ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.hdg {
    font-weight: bold;
    line-height: 1.5;
    margin: 0;
}

.inner {
    max-width: 1312px;
}

button a {
    text-decoration: none;
}

img.only-pc,
br.only-pc {
    display: block;
}

img.only-sp,
br.only-sp {
    display: none;
}

.page-break-before {
    page-break-before: always;
}

/* 追従ボタン */
.sticky-content {
    background:rgba(255, 255, 255, 0.95);
    box-shadow: 0px -5px 10px 0px rgba(0, 0, 0, 0.25);
    opacity: 1;
    pointer-events: auto;
    transition: opacity 0.5s;
    z-index: 10;
}

.sticky-content.isHide {
    opacity: 0;
    pointer-events: none;
}

.sticky-content.only-pc {
    display: block;
}

.sticky-content.only-sp {
    display: none;
}

.sticky-content .flex-content {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 32px;
}

.sticky-content a {
    background: #FCC800;
    color: #000;
    line-height: initial;
    max-width: 288px;
    height: 56px;
    padding: 16px 28px;
    border-radius: 15vw;
    font-size: 1.6rem;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    text-decoration: none;
}

.sticky-content a .txt-area {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}

.sticky-content .btn-02>a::before {
    display: none;
}

.sticky-content a .txt-01 {
    font-size: 1.4rem;
}

.sticky-content a .txt-02 {
    margin-right: 12px;
    word-break: keep-all;
}

.sticky-content a>[class^="icon-"].icon-02 {
    width: 14px;
    margin: 0;
}

/* ホバー、フォーカスしても色は変更させない */
.btn-02>a:hover, .btn-02>a:focus {
    background: #FCC800;
}

.btn-02>a:active {
    background: #E0B400;
}

@media only screen and (max-width: 1024px) {
    .sticky-content {
        padding: 39.5px 8px 16px;
    }

    .sticky-content.only-pc {
        display: none;
    }

    .sticky-content.only-sp {
        display: block;
    }

    .sticky-content a {
        position: relative;
        font-size: 1.5rem;
        height: 40px;
        padding: 13px 20px;
    }

    .sticky-content a .txt-01 {
        position: absolute;
        top: -21px;
        left: 0;
        font-size: 1.2rem;
        font-weight: normal;
        text-align: center;
        width: 100%;
    }

    .sticky-content a>[class^="icon-"].icon-02 {
        width: 12px;
    }
}

@media only screen and (max-width: 768px) {
    body[data-id="top"] #main,
    body[data-id="setup"] #main,
    body[data-id="utilizing"] #main {
        margin-top: 53px; /* ヘッダーの高さ */
    }

    .sticky-content .flex-content {
        gap: 8.5px;
    }

    .sticky-content a .txt-02 {
        margin-right: 8px;
    }
}


/* トップページ */
/*ドライブエージェントパーソナルについて*/
.note-01 {
    max-width: 1248px;
    margin: 16px auto 0;
}

.note-01 > li {
    padding-left: 17.5px;
}

#section-about {
    padding: 64px 0 0;
}

#section-about .contents-wrapper,
#section-service .contents-wrapper {
    padding: 0 0 128px;
}

#section-about .hdg {
    font-size: 4rem;
    text-align: center;
}

#section-about h2.hdg {
    word-break: auto-phrase;
}

#section-about h2.hdg br {
    display: none;
}

@media only screen and (max-width: 1024px) {
    #section-about h2.hdg br {
        display: block;
    }
}

#section-about .hdg + p {
    margin-top: 32px;
    text-align: justify;
}

#section-about .movie-wrapper {
    margin: 32px 0;
    display: flex;
    justify-content: center;
    gap: 32px;
}

#section-about .movie-wrapper  .movie-area {
    width: 416px;
}

#section-about .movie-wrapper .txt-box {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex-basis: 288px;
}

#section-about .movie-wrapper .txt-box p:first-child {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.65;
}

body[data-id="top"] .blsc-inner ,
body[data-id="setup"] .blsc-inner ,
body[data-id="utilizing"] .blsc-inner {
    height: 234px;
}

#section-about a {
    color:#005BAC
}

/*ドライブエージェントパーソナルについて-sp*/
@media only screen and (max-width: 768px) {
    .note-01 {
        margin-top: 8px;
    }

    #section-about {
        padding: 32px 0 0;
    }

    #section-about .contents-wrapper,
    #section-service .contents-wrapper {
        padding: 0 0 80px;
    }

    #section-about .hdg {
        font-size: 2.4rem;
    }

    #section-about .hdg + p {
        font-size: 1.5rem;
        margin-top: 16px;
    }

    #section-about .movie-wrapper {
        margin: 16px 0 32px;
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }

    #section-about .movie-wrapper .movie-area {
        width: 304px;
    }

    #section-about .movie-wrapper .txt-box {
        flex-basis: initial;
    }

    #section-about .movie-wrapper .txt-box p:first-child {
        font-size: 1.6rem;
        line-height: 1.5;
        text-align: center;
    }

    body[data-id="top"] .blsc-inner ,
    body[data-id="setup"] .blsc-inner ,
    body[data-id="utilizing"] .blsc-inner {
        width: 304px;
        height: 171px;
        margin: 0 auto;
    }
}

.inner-03 {
    max-width: 736px;
}

/*一般的なドライブレコーダーは*/
#box-comp {
    background-color: #F2F3F5;
    max-width: 1056px;
    margin: 96px auto 0;
    padding: 32px 64px;
    display: flex;
    gap: 32px;
}

#box-comp .hdg {
    font-size: 3rem;
    text-align: initial;
    word-break: auto-phrase;
}

#box-comp .hdg br {
    display: none;
}

@media only screen and (max-width: 1024px) {
    #box-comp .hdg br {
        display: block;
    }
}

#box-comp ul {
    margin-top: 16px;
}

#box-comp ul > li {
    position: relative;
    padding-left: 2rem;
}

#box-comp ul > li::before {
    position: absolute;
    top: .95rem;
    left: .6rem;
    content: "";
    background-color: #000;
    border-radius: 50%;
    width: 6px;
    height: 6px;
    display: block;
}

#box-comp .img {
    width: 255px;
    display: flex;
    align-items: center;
}

/*一般的なドライブレコーダーは-sp*/
@media only screen and (max-width: 768px) {
    #box-comp {
        flex-direction: column;
        gap: 20.5px;
        margin-top: 80px;
        padding: 16px;
    }

    #box-comp .hdg {
        font-size: 2.1rem;
        text-align: center;
    }

    #box-comp ul {
        margin-top: 8px;
    }

    #box-comp ul > li {
        font-size: 1.5rem;
        padding-left: 1.5rem;
    }

    #box-comp ul > li::before {
        position: absolute;
        display: block;
        content: "";
        background-color: #000;
        border-radius: 50%;
        width: 3px;
        height: 3px;
        top: .95rem;
        left: 0;
    }

    #box-comp .img {
        width: 272px;
        margin: 0 auto;
        display: flex;
        align-items: center;
    }
}

/* ドライブエージェントパーソナルなら */
#box-if {
    max-width: 1248px;
    margin: 64px auto 0;
}

#box-if > .hdg {
    font-size: 3rem;
    text-align: center;
}

#box-if > .flex-contents {
    display: flex;
    gap: 32px;
    margin-top: 32px;
}

#box-if .content-unit {
    width: calc(100% / 2 - 16px);
    max-width: 608px;
    margin: 0 auto;
}

#box-if .hdg-box {
    max-width: 608px;
    padding-bottom: 16px;
    border-bottom: 4px solid #005BAC;
}

#box-if .hdg-box > .hdg {
    color: #005BAC;
    font-size: 2.4rem;
    text-align: center;
}

#box-if .lower-items {
    max-width: 544px;
    margin: 32px auto 0;
}

#box-if .lower-items > p {
    text-align: justify;
}

.note {
    margin-top: 8px;
    padding: 0;
    font-size: 1.4rem;
    color: #6B7075;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.note > li {
    display: flex;
    gap: 4px;
}

.note > li p,
.note > li a {
    text-align: justify;
}

.note > li a {
    text-align: justify;
}

.txt-link {
    position: relative;
    padding-left: 15px;
    text-decoration: none;
    display: flex;
}

body[data-id="utilizing"] .txt-link {
    display: inline-block;
}

.txt-link:hover {
    text-decoration: underline;
}

.txt-link::before {
    content: "";
    position: absolute;
    top: 7px;
    left: 0;
    width: 6.5px;
    height: 6.5px;
    border-top: 1px solid #005BAC;
    border-right: 1px solid #005BAC;
    transform: rotate(45deg);
}

body[data-id="utilizing"] .txt-link::before {
    top: 9px;
}

.note > li .pdf-icon,
.note > li .icon.blank04 {
    width: 14px;
    min-width: 14px;
    margin-left: 8px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 自動追加されるアイコンを非表示にします */
#box-if .icon.blank01,
.accordion-contents .icon.blank01 {
    display: none;
}

.note > li .mark {
    display: block;
    white-space: nowrap;
}

#box-if .img[data-id="call"],
#box-if .img[data-id="operator01"] {
    margin: 32px auto 0;
}

#box-if .img[data-id="call"] {
    max-width: 544px;
}

#box-if .img[data-id="operator01"] {
    max-width: 351px;
}

/* ドライブエージェントパーソナルなら-sp */
@media only screen and (max-width: 768px) {
    #box-if {
        margin: 48px auto 0;
    }

    #box-if > .hdg {
        font-size: 21px;
    }

    #box-if > .flex-contents {
        flex-direction: column;
        gap: 48px;
        margin-top: 16px;
    }

    #box-if .content-unit {
        width: 100%;
    }

    #box-if .hdg-box {
        position: relative;
        border-bottom: 0;
        padding-bottom: 8px;
    }

    #box-if .hdg-box::before {
        position: absolute;
        bottom: -4px;
        display: block;
        content: "";
        width: 100vw;
        margin: 0 calc(50% - 50vw);
        border-top: 4px solid #005BAC;
    }

    #box-if .hdg-box > .hdg {
        font-size: 1.8rem;
    }

    #box-if .lower-items {
        max-width: 88.12%;
        margin: 20px auto 0;
    }

    #box-if .lower-items > p {
        font-size: 1.5rem;
    }

    #box-if .lower-items ul > li {
        font-size: 1.3rem;
        line-height: 1.5;
    }

    .note {
        font-size: 1.3rem;
    }

    .txt-link::before {
        top: 5.5px;
    }

    .Android .txt-link::before {
        top: 7.5px;
    }

    body[data-id="utilizing"] .txt-link::before {
        top: 9px;
    }

    .note > li .pdf-icon,
    .note > li .icon.blank04 {
        width: 12px;
    }

    #box-if .img[data-id="call"],
    #box-if .img[data-id="operator01"] {
        margin: 16px auto 0;
    }

    #box-if .img[data-id="call"] {
        max-width: 304px;
    }

    #box-if .img[data-id="operator01"] {
        max-width: 304px;
    }
}

/* 3つのサービス */
#section-service {
    width: 100%;
}

#section-service .contents-wrapper > .hdg {
    color: #005BAC;
    font-size: 4rem;
    text-align: center;
}

#section-service .hdg > span {
    color: #005BAC;
    font-size: 5rem;
}

#section-service .service-list {
    margin-top: 32px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.service-hdg {
    background-color: #F2F7FC;
    width: 100%;
    padding: 16px 9.7%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2%;
}

@media only screen and (max-width: 1024px) {
    .service-hdg {
        padding: 16px 4%;
    }
}

.service-hdg > .left-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
}

.content-unit[data-id="2"] .service-hdg > .left-content,
.content-unit[data-id="3"] .service-hdg > .left-content {
    padding: calc((50px) / 2) 0; /* data-id="1"の高さに合わせるため、余白追加 */
}

.service-hdg > .left-content .img {
    width: 80px;
    height: 80px;
}

.service-hdg > .left-content .img {
    min-width: 80px;
    min-height: 80px;
}

.service-hdg > .left-content .img {
    position: relative;
}

.service-hdg > .left-content .img::before {
    position: absolute;
    top: 40px;
    left: 40px;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    display: block;
    color: #005BAC;
    transform: translate(-45%, -45%);
}

.content-unit[data-id="1"] .service-hdg > .left-content .img::before,
.content-unit[data-id="2"] .service-hdg > .left-content .img::before,
.content-unit[data-id="3"] .service-hdg > .left-content .img::before {
    font-family: Arial;
}

.content-unit[data-id="1"] .service-hdg > .left-content .img::before {
    content: "1";
}

.content-unit[data-id="2"] .service-hdg > .left-content .img::before {
    content: "2";
}

.content-unit[data-id="3"] .service-hdg > .left-content .img::before {
    content: "3";
}

.service-hdg > .left-content .img > img {
    width: 100%;
    height: 100%;
}

.service-hdg > .left-content .sp-flex .img{
    display: none;
}

.service-hdg > .left-content .hdg {
    color: #005BAC;
    font-size: 3rem;
}

.service-hdg > .left-content .txt {
    margin: 8px 0 0 0;
}

.service-hdg > button {
    background-color: #FFFFFF;
    color: #005BAC;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    min-width: 154px;
    height: 40px;
    padding: 9px 20px 7px;
    border: 1px solid #005BAC;
    border-radius: 15vw;
    display: flex;
    justify-content: center;
    align-items: center;
}

.service-hdg > button > .open-icon {
    color: #005BAC;
    position: relative;
    width: 12px;
    height: 12px;
    margin-left: 12px;
    display: block;
}

.service-hdg > button > .open-icon::before,
.service-hdg > button > .open-icon::after {
	position: absolute;
    content: "";
    top: 0;
    left: 6px;
	width: 2px;
    height: 12px;
    background-color: #005BAC;
    transition: transform 0.5s ease;
}

.open-icon:before {
	transform: rotate(90deg);
}

.content-unit.active .open-icon:after{
    transform: rotate(90deg);
}

/* 3つのサービス-sp */
@media only screen and (max-width: 768px) {
    #section-service .service-list {
        margin-top: 16px;
    }

    #section-service .contents-wrapper > .hdg {
        font-size: 2.4rem;
    }

    #section-service .contents-wrapper > .hdg > span {
        font-size: 2.8rem;
    }

    .service-hdg {
        position: relative;
        background: 0;
        margin: 0 auto;
        padding: 16px 0;
        flex-direction: column;
        align-items: initial;
        gap: 0;
    }

    .service-hdg::before {
        position: absolute;
        display: block;
        content: "";
        background-color: #F2F7FC;
        width: 100vw;
        height: 100%;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;
    }

    .service-hdg > .left-content .hdg {
        font-size: 1.8rem;
    }

    .service-hdg > .left-content .img {
        width: 40px;
        height: 40px;
    }

    .service-hdg > .left-content .img {
        min-width: 40px;
        min-height: 40px;
    }

    .service-hdg > .left-content .img::before {
        font-size: 2rem;
        top: 20px;
        left: 20px;
    }

    .service-hdg > .left-content > .img{
        display: none;
    }

    .service-hdg > .left-content .sp-flex{
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .service-hdg > .left-content .sp-flex .img{
        display: block;
    }

    .service-hdg > .left-content .txt {
        margin: 4px 0 0 0;
    }

    .service-hdg > button {
        font-size: 1.5rem;
        line-height: initial;
        min-width: 100%;
        margin-top: 16px;
        padding: 10px;
    }
}

/* アコーディオンメニュー内要素 */
.accordion-contents {
    max-width: 1248px;
    height: auto;
    transition: max-height 0.3s, margin 0.3s, visibility 0.3s;
    margin: 0 auto;
    max-height: 0;
    visibility: hidden;
}

.content-unit[data-id="3"] .accordion-contents {
    transition: max-height 0.4s, margin 0.4s, visibility 0.4s;
}

.content-unit.active .accordion-contents{
    margin: 32px auto 112px;
    max-height: 10000px; /* 適切な高さに調整 */
    visibility: visible;
}

.content-unit:last-child .accordion-contents {
    margin: 0 auto;
}

.content-unit:last-child.active .accordion-contents {
    margin: 32px auto 0;
}

.accordion-contents > .img {
    max-width: 100%;
}

.content-unit[data-id="1"] .accordion-contents .hdg {
    font-size: 2.4rem;
    text-align: center;
    margin-top: 32px;
}

.content-unit[data-id="1"] .accordion-contents .operation-system-txt {
    margin-top: 64px;
}

.accordion-contents .item-unit {
    position: relative;
    background-color: #F2F7FC;
    width: 100%;
    max-width: 866px;
    margin: 0 auto;
    padding: 33px;
    border: 1px solid #005BAC;
    border-radius: 10px;
}

.content-unit[data-id="1"] .accordion-contents .item-unit {
    margin-top: 47px;
}

.content-unit[data-id="1"] .accordion-contents .item-unit .hdg {
    font-size: 1.6rem;
    text-align: center;
    margin-top: 0;
}

.content-unit[data-id="1"] .accordion-contents .item-unit:first-child,
.content-unit[data-id="1"] .accordion-contents .item-unit:last-child {
    margin-top: 8px;
}

.accordion-contents .item-unit.flex-item {
    display: flex;
    justify-content: center;
}

.bulleted > li {
    position: relative;
    padding-left: 2rem;
    text-align: justify;
}

.bulleted > li.bold {
    font-weight: bold;
}

.bulleted > li.auto-phrase {
    word-break: auto-phrase;
}

.bulleted > li::before {
    position: absolute;
    top: .95rem;
    left: .6rem;
    content: "";
    background-color: #000;
    border-radius: 50%;
    width: 6px;
    height: 6px;
    display: block;
}

.content-unit[data-id="1"] .accordion-contents .item-unit .txt-box {
    max-width: 100%;
}

.content-unit[data-id="1"] .accordion-contents .item-unit[data-id="operation"] .txt-box {
    max-width: 384px;
}

.accordion-contents .item-unit .note {
    margin-top: 16px;
}

.accordion-contents .item-unit .img {
    width: 100%;
    min-width: 145px;
}

.accordion-contents .item-unit > .hdg {
    line-height: initial;
    text-align: center;
}

.accordion-contents .img-box {
    text-align: center;
    margin-top: 16px;
    display: flex;
    justify-content: center;
    gap: 60px;
}

.accordion-contents .img-box .img + p {
    text-align: center;
    margin-top: 16px;
}

.accordion-contents .img-box .note {
    margin-top: 0;
}

.accordion-contents .item-unit.has-icon::before {
    position: absolute;
    content: "";
    width: 0px;
    height: 0px;
    left: 50%;
    bottom: -31px;
    border-top: 15px solid #005BAC;
    border-right: 32px solid transparent;
    border-left: 32px solid transparent;
    transform: translateX(-50%);
    display: block;
}

.content-unit[data-id="2"] .accordion-contents .item-unit {
    max-width: 1058px;
    margin-top: 32px;
}

.accordion-contents .label-hdg {
    background-color: #3384D6;
    color: #FFFFFF;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0;
    text-align: center;
    line-height: 1.5;
    padding: 8px 0;
}

.accordion-contents .lower-items {
    margin-top: 33px;
    display: flex;
    justify-content: center;
    gap: 6.4%;
}

.accordion-contents .lower-items {
    margin-top: 33px;
    display: flex;
    justify-content: center;
    gap: 6.4%;
}

.content-unit[data-id="1"] .accordion-contents .note.has-width {
    width: 258px;
    margin: 0 auto;
}

.accordion-contents .lower-items .txt-box {
    flex: 0 1 480px;
}

.content-unit[data-id="2"] .accordion-contents .lower-items .lower-right-items {
    flex: 0 1 256px;
}

.support-table {
    width: 100%;
    max-width: 480px;
    text-align: center;
    line-height: 1.5;
    margin: 0 auto 16px;
    border: 1px solid #979CA1;
    table-layout: fixed;
}

.support-table th,
.support-table td {
    padding: 8px 2px;
}

.support-table th {
    color: #FFFFFF;
}

.support-table th[data-id="new"] {
    background-color: #005BAC;
}

.support-table th[data-id="two"] {
    background-color: #3384D6;
}

.support-table th[data-id="one"] {
    background-color: #6B7075;
}

.support-table td {
    font-size: 2rem;
    line-height: 1.2;
}

.support-table td[data-id="new"] {
    background-color: #CCE0F5;
}

.support-table td[data-id="two"] {
    background-color: #E5EFFA;
}

.support-table td[data-id="one"] {
    background-color: #FAFAFA;
}

.accordion-contents .support-table-description {
    text-align: justify;
}

.content-unit[data-id="2"] .bulleted {
    margin-bottom: 16px;
}

.accordion-contents .lower-items .img-box {
    gap: 32px;
}

.accordion-contents .lower-right-items p.battery-unit-txt {
    text-align: center;
    margin-top: 8px;
}

.accordion-contents .lower-right-items p.offer-txt {
    color: #1A1C21;
    font-weight: bold;
    text-align: center;
    margin-top: 0;
    margin-bottom: 16px !important;
}

.item-unit[data-id="serious-accident"] .lower-items {
    display: block;
    max-width: 802px;
    margin: 33px auto 0;
}

.item-unit[data-id="serious-accident"] .txt-box {
    max-width: 100%;
}

.item-unit[data-id="serious-accident"] .txt-box p {
    text-align: justify;
}

.item-unit[data-id="serious-accident"] .support-table {
    margin: 0 auto 16px 0;
}

.flow-box {
    margin-top: 32px;
}

.accident-img-box {
    background-color: #FAFAFA;
    padding: 9px 0;
    border: 1px solid #979CA1;
    border-radius: 5px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.accident-img-box > p {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 0 17px;
}

.flow-chart {
    padding-top: 13px;
}

.flow-chart .payment {
    background-color: #FFFFFF;
    width: 100%;
    padding: 17px 0;
    border: 1px solid #005BAC;
    border-radius: 5px;
}

.flow-chart .payment p {
    color: #005BAC;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}

.flow-chart .row {
    width: 100%;
    margin-bottom: 8px;
    display: flex;
    gap: 32px;
}

.flow-chart .row:first-child {
    margin-bottom: 12px;
}

.flow-chart .row .arrow-box {
    position: relative;
    height: 15px;
    width: calc(100% / 2 - 16px);
    display: flex;
    justify-content: center;
}

.flow-chart .row .arrow-box[data-flex="bottom"] {
    align-self: flex-end;
}

.flow-chart .row .arrow-box > p {
    position: absolute;
    top: -4px;
    left: 17px;
    font-weight: bold;
    line-height: 1.5;
}

.flow-chart .row .arrow-box > .icon-arrow {
    position: relative;
}

.flow-chart .row .arrow-box > .icon-arrow::before {
    position: absolute;
    content: "";
    width: 0px;
    height: 0px;
    left: 50%;
    bottom: 0;
    border-right: 32px solid transparent;
    border-left: 32px solid transparent;
    transform: translateX(-50%);
    display: block;
}

.flow-chart .row .arrow-box[data-id="old"] > .icon-arrow::before {
    border-top: 15px solid #979CA1;
}

.flow-chart .row .arrow-box[data-id="new"] > .icon-arrow::before {
    border-top: 15px solid #3384D6;
}

.flow-chart .flow-item-unit {
    flex: 1;
    padding: 8px 22px;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.flow-chart .flow-item-unit[data-id="old"] {
    background-color: #6B7075;
    border: 0px solid #6B7075;
}

.flow-chart .flow-item-unit[data-id="new"] {
    background-color: #005BAC;
    border: 0px solid #005BAC;
}

.content-unit[data-id="3"] .accordion-contents .item-unit {
    max-width: 100%;
    margin-top: 32px;
}

.flow-chart .flow-item-unit p {
    color: #FFFFFF;
    font-weight: bold;
    text-align: center;
    line-height: 1.68;
}

.content-unit[data-id="3"] .lower-items {
    gap:32px;
}

.accordion-contents .app-icons {
    display: flex;
    align-items: center;
    gap: 32px;
    margin-top: 32px;
    flex-wrap: wrap;
}

.accordion-contents .app-icons .icon-unit {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    text-decoration: none;
}

.content-unit[data-id="3"] .accordion-contents .lower-items .txt-box,
.content-unit[data-id="3"] .accordion-contents .lower-right-items {
    flex: 0 1 480px;
}

.content-unit[data-id="3"] .accordion-contents .lower-right-items .img {
    margin: 0 auto;
}

.content-unit[data-id="3"] .item-unit:last-child .lower-items .txt-box {
    max-width: 994px;
    flex: initial;
}

.content-unit[data-id="3"] .lower-items .hdg-description {
    margin-top: 0;
}

.support-tables-wrapper {
    margin-top: 32px;
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 32px;
}

.support-tables-wrapper .support-table-unit {
    width: calc(50% - 16px);
}

.support-tables-wrapper .support-table-unit > .hdg {
    color: #3384D6;
    font-size: 2rem;
}

.support-tables-wrapper .support-table {
    margin: 16px 0;
}

.support-tables-wrapper .safe-screen-img {
    margin-top: 32px;
}

.accordion-contents .image-supplement-txt {
    color: #6B7075;
    font-size: 1.4rem;
    text-align: center;
    margin-top: 8px;
}

/* アコーディオンメニュー内要素-sp */
@media only screen and (max-width: 768px) {
    .accordion-contents {
        margin: 0 auto;
    }

    .content-unit.active .accordion-contents {
        margin: 16px auto 64px;
    }

    .content-unit[data-id="3"] .accordion-contents.active {
        margin: 16px auto 64px;
    }

    .accordion-contents .label-hdg {
        font-size: 1.8rem;
        padding: 4px 0 5px;
    }

    .accordion-contents .item-unit {
        padding: 16.5px;
    }

    .content-unit[data-id="2"] .accordion-contents .item-unit {
        margin-top: 48px;
    }

    .content-unit[data-id="2"] .accordion-contents .item-unit:first-child {
        margin-top: 16px;
    }

    .accordion-contents .item-unit.has-icon::before{
        bottom: -19.5px;
        border-top: 11.5px solid #005BAC;
        border-right: 24px solid transparent;
        border-left: 24px solid transparent;
    }

    .content-unit[data-id="1"] .accordion-contents .item-unit {
        margin-top: 27.5px;
    }

    .accordion-contents .item-unit.flex-item {
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }

    .accordion-contents .item-unit .note {
        margin-top: 4px;
    }

    .content-unit[data-id="1"] .accordion-contents .note.has-width {
        width: 248px;
    }

    .content-unit[data-id="1"] .accordion-contents .item-unit .hdg {
        font-size: 1.5rem;
        line-height: 1.7;
        margin-top: 0;
    }

    .content-unit[data-id="1"] .accordion-contents .hdg.accident-flow-txt {
        font-size: 1.8rem;
        margin-top: 16px;
    }

    .content-unit[data-id="1"] .accordion-contents .item-unit + .hdg {
        font-size: 1.8rem;
        margin-top: 48px;
    }

    .accordion-contents .item-unit > .img-box {
        gap: 30px;
    }

    .accordion-contents .item-unit > .img-box .img + p {
        margin-top: 8px;
    }

    .accordion-contents .item-unit > .img-box.sp-column {
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }

    .accordion-contents .item-unit > .img-box.sp-column > .img{
        margin: 0 auto;
    }

    .bulleted > li {
        font-size: 1.5rem;
    }

    .accordion-contents .label-hdg,
    .accordion-contents .lower-items {
        max-width: 98.06%;
        margin: 0 auto;
    }


    .accordion-contents .lower-items {
        margin-top: 16px;
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }

    .support-table {
        margin-bottom: 16px
    }

    .item-unit[data-id="serious-accident"] .support-table {
        margin: 0 auto 16px;
    }

    .content-unit[data-id="1"] .accordion-contents .item-unit[data-id="operation"] .txt-box,
    .accordion-contents .item-unit .txt-box,
    .accordion-contents .lower-items .txt-box {
        max-width: 100%;
        flex: initial;
    }

    .accordion-contents .lower-items .img-box {
        gap: 16px;
    }

    .accident-img-box > p {
        font-size: 1.6rem;
        margin: 0 0 0 16px;
    }

    .lower-right-items[data-id="battery-unit"] {
        display: flex;
        gap: 16px;
        justify-content: center;
        align-items: center;
    }

    .accordion-contents .lower-right-items p.offer-txt {
        margin-top: 16px;
        margin-bottom: 8px !important;
    }

    .item-unit[data-id="serious-accident"] .lower-items {
        max-width: 100%;
        margin: 20px 0 auto;
    }

    .flow-box {
        margin-top: 16px;
    }

    .flow-chart {
        padding-top: 8px;
    }

    .flow-chart .row {
        gap: 16px;
    }

    .flow-chart .row:first-child {
        margin-top: calc(15px * 1.5 + 8px);
        margin-bottom: 8px;
    }

    .flow-chart .row .arrow-box {
        width: calc(100% / 2 - 8px);
        height: 11.5px;
    }

    .flow-chart .row .arrow-box > p {
        top: calc(-1.5rem - 16px);
        left: 50%;
        padding-left: 0;
        transform: translateX(-50%);
    }

    .flow-chart .row .arrow-box > .icon-arrow::before {
        bottom: 0;
        border-right: 24px solid transparent;
        border-left: 24px solid transparent;
    }

    .flow-chart .row .arrow-box[data-id="old"] > .icon-arrow::before {
        border-top: 11.5px solid #979CA1;
    }

    .flow-chart .row .arrow-box[data-id="new"] > .icon-arrow::before {
        border-top: 11.5px solid #3384D6;
    }

    .flow-chart .flow-item-unit {
        padding: 12px;
    }

    .flow-chart .flow-item-unit p > span {
        margin-bottom: 12px;
        display: block;
    }

    .flow-chart .flow-item-unit p > span:last-child {
        margin-bottom: 0;
    }

    .flow-chart .payment  {
        padding: 12px;
    }

    .flow-chart .payment p {
        font-size: 1.5rem;
    }

    .content-unit[data-id="3"] .accordion-contents .item-unit {
        margin-top: 48px;
    }

    .content-unit[data-id="3"] .lower-items {
        gap: 16px;
    }

    .content-unit[data-id="3"] .lower-right-items p {
        font-size: 1.3rem;
    }

    .accordion-contents .lower-right-items p.battery-unit-txt {
        text-align: left;
        margin-top: 0;
    }

    .accordion-contents .image-supplement-txt {
        font-size: 1.3rem;
    }

    .accordion-contents .note + .image-supplement-txt {
        margin-top: 32px;
    }

    .accordion-contents .app-icons {
        margin-top: 16px;
        justify-content: center;
        flex-wrap: nowrap;
        gap: 19px;
    }

    .accordion-contents .app-icons .icon-unit {
        text-align: left;
        flex-direction: column;
        gap: 8px;
    }

    .support-tables-wrapper .support-table-unit > .hdg {
        font-size: 1.6rem;
        text-align: center;
        margin-top: 0;
    }

    .support-tables-wrapper {
        margin-top: 16px;
        flex-direction: column;
        align-items: center;
        gap: 48px;
    }

    .support-tables-wrapper .support-table {
        margin: 16px 0;
    }

    .support-table th{
        font-size: 1.2rem;
        vertical-align: middle;
    }

    .support-table td {
        font-size: 1.4rem;
    }

    .support-tables-wrapper .support-table-unit {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .support-tables-wrapper .safe-screen-img {
        margin-top: 16px;
    }

    .accordion-contents .lower-items .txt-box p.hdg {
        margin-top: 0;
    }

    .content-unit[data-id="2"] .accordion-contents .lower-items .lower-right-items,
    .content-unit[data-id="3"] .accordion-contents .lower-items .txt-box,
    .content-unit[data-id="3"] .accordion-contents .lower-right-items{
        flex: initial;
    }
}

/* アコーディオンメニュー内、画像ごとに幅と余白を設定 */
.item-unit .img[data-id="3service_17"],
.item-unit .img[data-id="3service_18"] {
    max-width: 56px;
    min-width: 0;
}

.item-unit .img[data-id="3service_11"] {
    max-width: 144px;
}

.item-unit .img[data-id="3service_09"] {
    max-width: 152px;
}

.item-unit .img[data-id="3service_10"] {
    max-width: 192px;
}

.item-unit .img[data-id="3service_11"],
.item-unit .img[data-id="3service_20"],
.item-unit .img[data-id="3service_21"] {
    max-width: 160px;
}

.item-unit .img[data-id="3service_04"] {
    max-width: 166px;
}

.item-unit .img[data-id="3service_01"],
.item-unit .img[data-id="3service_05"],
.item-unit .img[data-id="3service_07"],
.item-unit .img[data-id="3service_08"],
.img[data-id="3service_13"] {
    max-width: 224px;
}

.item-unit .img[data-id="3service_02"],
.item-unit .img[data-id="3service_03"] {
    max-width: 288px;
}

.item-unit .img[data-id="operator02"] {
    max-width: 383px;
}

.item-unit .img[data-id="3service_14"],
.item-unit .img[data-id="3service_15"],
.item-unit .img[data-id="3service_16"] {
    max-width: 480px;
}

.item-unit .img[data-id="3service_01"],
.item-unit .img[data-id="operator02"] {
    margin-left: 32px;
}

.item-unit .img[data-id="3service_06"],
.item-unit .img[data-id="3service_12"] {
    max-width: 256px;
}

.item-unit .img[data-id="3service_09"] {
    margin: 0 auto;
}

.item-unit .img[data-id="3service_12"] {
    margin: 0 auto;
}

.item-unit .img[data-id="3service_09"] img {
    width: 100%;
    margin: 0 auto;
}

.item-unit .img[data-id="3service_12"] img {
    margin: 0 auto;
    display: block;
}

/* アコーディオンメニュー内、画像ごとに幅と余白を設定-sp */
@media only screen and (max-width: 768px) {
    .accordion-contents .item-unit .img {
        width: 100%;
        min-width: 80px;
    }
    .item-unit .img[data-id="3service_01"] {
        margin: 0 auto;
        max-width: 204px;
    }

    .item-unit .img[data-id="3service_02"] {
        max-width: 176px;
    }

    .item-unit .img[data-id="3service_03"] {
        margin: 0 auto;
        max-width: 240px;
    }

    .item-unit .img[data-id="3service_04"] {
        max-width: 114px;
        min-width: 100px;
    }

    .item-unit .img[data-id="3service_20"],
    .item-unit .img[data-id="3service_21"] {
        max-width: 123px;
    }

    .item-unit .img[data-id="3service_05"] {
        max-width: 160px;
    }

    .item-unit .img[data-id="operator02"] {
        margin-left: 0;
        max-width: 272px;
    }

    .item-unit .img[data-id="3service_06"] {
        max-width: 176px;
    }

    .item-unit .img[data-id="3service_07"],
    .item-unit .img[data-id="3service_08"] {
        max-width: 144px;
    }

    .item-unit .img[data-id="3service_09"],
    .item-unit .img[data-id="3service_09"] img {
        max-width: 96px;
    }

    .item-unit .img[data-id="3service_09"] img {
        margin: 0;
    }

    .item-unit .img[data-id="3service_10"] {
        max-width: 120px;
    }

    .item-unit .img[data-id="3service_11"] {
        max-width: 89px;
    }

    .item-unit .img[data-id="3service_12"],
    .item-unit .img[data-id="3service_12"] img {
        margin: 0 auto;
        max-width: 112px;
    }

    .img[data-id="3service_13"] {
        max-width: 128px;
    }

    .item-unit .img[data-id="3service_14"],
    .item-unit .img[data-id="3service_15"],
    .item-unit .img[data-id="3service_16"],
    .item-unit .img[data-id="3service_19"] {
        margin: 0 auto;
        max-width: 304px;
    }

    .item-unit .img[data-id="3service_17"],
    .item-unit .img[data-id="3service_18"] {
        max-width: 80px;
    }

    .item-unit .img[data-id="3service_16"] {
        margin-top: 16px;
    }

}

/* アンカーリンク */
.anchor-links.bg {
    position: relative;
    margin: 0 auto;
}

.anchor-links.bg::before {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -1;
    display: block;
    content: "";
    background-color: #005BAC;
    width: 100vw;
    height: 100%;
    padding-top: 40px;
    transform: translateX(-50%);
}

.anchor-links ul {
    max-width: 1000px;
    padding: 40px 0 29px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
}

.anchor-links ul > li {
    width: calc((100% - 32px) / 2);
    max-width: 416px;
    cursor: pointer;
}

.anchor-links ul > li > .dap-anchor-link {
    width: 100%;
    height: 56px;
    background-color: #FFFFFF;
    color: #005BAC;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    max-width: 416px;
    margin-left: auto;
    padding: 16px 28px;
    border: 0px solid #FFFFFF;
    border-radius: 15vw;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.anchor-links ul > li > .dap-anchor-link .txt {
    color: #005BAC;
    line-height: 1.4;
    margin-right: 12px
}

.anchor-links ul > li > .dap-anchor-link .chevron-down  {
    display: inline-block;
    flex-shrink: 0;
    vertical-align: middle;
    color: #005BAC;
    line-height: 1;
    width: 10px;
    height: 10px;
    border: 2px solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(-25%) rotate(135deg);
}

/* アンカーリンク-sp */
@media only screen and (max-width: 768px) {
    .anchor-links ul {
        max-width: 606px;
        padding: 16px 0;
        margin: 0 auto;
        display: flex;
        gap: 8px;
    }

    .anchor-links ul > li {
        width: 100%;
    }

    .anchor-links ul > li > .dap-anchor-link {
        font-size: 1.5rem;
        max-width: 606px;
        height: 40px;
        margin: 0 auto;
        padding: 11px 19px 10.5px;
        border: 0px solid #FFFFFF;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .anchor-links ul > li > .dap-anchor-link .txt.small {
        font-size: 1.4rem;
    }
}

/* 以降の見出し部分は共通要素 */
section[id^="section-"] > .hdg-box {
    position: relative;
    padding-bottom: 8px;
}

section[id^="section-"] .contents-wrapper {
    padding: 40px 0 27px;
}

section[id^="section-"] .contents-wrapper.gradation-bg {
    position: relative;
}

section[id^="section-"] .contents-wrapper.gradation-bg::before {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -1;
    content: "";
    width: 100vw;
    height: 100%;
    transform: translateX(-50%);
    display: block;
}

section[id^="section-"] > .hdg-box::before {
    position: absolute;
    bottom: -8px;
    content: "";
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    border-top: 8px solid #005BAC;
    display: block;
}

section[id^="section-"] > .hdg-box > .hdg {
    color: #005BAC;
    font-size: 4rem;
    text-align: center;
}

/* 以降の見出し部分は共通要素-sp */
@media only screen and (max-width: 768px) {
    section[id^="section-"] > .hdg-box {
        padding-bottom: 4px;
    }

    section[id^="section-"] .contents-wrapper {
        padding: 36px 0 11px;
    }

    section[id^="section-"] > .hdg-box > .hdg {
        font-size: 2.4rem;
    }

    section[id^="section-"] > .hdg-box::before {
        bottom: -4px;
        border-top: 4px solid #005BAC;
    }
}

/* 製品ラインアップ */
#section-lineup,
#section-setup,
#section-utilizing,
#section-column,
#section-movie {
    padding-top: 101px;
}

#section-lineup {
    margin-top: 27px;
}

/* セクションごとにグラデーションの開始地点を調整 */
section[id="section-lineup"] .contents-wrapper.gradation-bg::before {
    background: linear-gradient(180deg, #F2F7FC 87%, #FFFFFF);
}

#section-lineup .products-box {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 32px;
}

#section-lineup .product-unit {
    width: calc(100% / 3);
}

#section-lineup .product-unit .details {
    margin: 16px 0 32px;
    padding: 16px 0 20px;
}

#section-lineup .product-unit[data-id="new"] .details {
    background-color: #005BAC;
    padding: 16px 29px 3px 23px;
    border: 0px solid #005BAC;
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 28px;
}

#section-lineup .product-unit[data-id="two"] .details,
#section-lineup .product-unit[data-id="one"] .details {
    margin-top: calc(2em - 16px);
}

#section-lineup .txt-box .note .mark {
    min-width: 26px;
}

/* 商品ラインアップにマイナーブレイクポイントを設定 */
@media only screen and (max-width: 1024px) {
    #section-lineup .product-unit[data-id="new"] .details {
        gap: 16px;
        flex-wrap: wrap;
    }

    #section-lineup .product-unit[data-id="two"] .details,
    #section-lineup .product-unit[data-id="one"] .details {
        margin-top: calc(2em + (2rem * 1.5));
    }
}

#section-lineup .product-unit .hdg {
    font-size: 2rem;
    line-height: 1.65;
    text-align: center;
}

#section-lineup .product-unit .hdg .sp-blank {
    display: none;
}

#section-lineup .product-unit[data-id="new"] .hdg,
#section-lineup .product-unit[data-id="new"] span,
#section-lineup .product-unit[data-id="new"] sup {
    color: #FFFFFF;
}

#section-lineup .product-unit[data-id="new"] .new-icon {
    background-color: #FCC800;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    padding: 1px 4px 0;
    white-space: nowrap
}

#section-lineup .product-unit .hdg > .name {
    line-height: 1.5;
}

#section-lineup .product-unit .hdg > .monthly {
    line-height: 2.25;
}

#section-lineup .product-unit .hdg > .charge {
    font-size: 3.6rem;
    line-height: 1.25;
}

#section-lineup .product-unit .hdg > .yen {
    display: inline-block;
}

#section-lineup .product-unit .img {
    max-width: 416px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}

section[id^="section-"] .product-unit p > .nav-button {
    background-color: #FFFFFF;
    color:#005BAC;
    width: 100%;
    margin-top: 32px;
    padding: 13px 28px;
    border: 1px solid #005BAC;
    border-radius: 15vw;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    height: 56px;
}

section[id^="section-"] .product-unit .nav-button > p {
    color: #005BAC;
    font-weight: bold;
    line-height: 1.5;
}

section[id^="section-"] .product-unit .nav-button > .icon-playback {
    position: relative;
    background-color: #3384D6;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    flex-shrink: 0;
}

section[id^="section-"] .product-unit .nav-button > .icon-playback::before {
    position: absolute;
    content: "";
    width: 0px;
    height: 0px;
    top: 50%;
    left: 52%;
    border-top: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 10.38px solid #FFFFFF;
    transform: translate(-50%, -50%);
    display: block;
}

#section-lineup .txt-box {
    padding-top: 32px;
    margin: 0 auto;
    max-width: 736px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#section-lineup .txt-box p {
    text-align: justify;
}

/* 製品表のスタイル */
.table-wrapper {
    width: 100%;
    padding-top: 63px;
}

.scroll-guide-txt {
    font-size: 1.3rem;
    text-align: center;
    padding-bottom: 5.5px;
    display: none;
}

.products-table {
    width: 100%;
    text-align: center;
    line-height: 1.5;
    margin: 0 auto;
    table-layout: fixed;
}

.products-table tr > th,
.products-table tr > td {
    vertical-align: middle;
}

.products-table tr > th { /* 見出し */
    background-color: #FFFFFF;
    text-align: left;
    line-height: 1.5;
    padding: 16px 0 16px 34px;
}

.products-table tr > td {
    font-size: 2rem;
    padding: 16px 34px;
}

.products-table tr > td > span {
    font-size: 1.6rem;
}

.products-table tr > td > br + span {
    margin-top: 8px;
    display: inline-block;
}

.products-table .product-name { /* 製品名 */
    color: #FFFFFF;
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    padding: 16px 34px;
}

.products-table .product-name > span {
    color: #FFFFFF;
}

.products-table .product-name .only-pc {
    display: inline;
}

.products-table .product-name .only-sp {
    display: none;
}

/*製品名の背景色*/
.products-table .product-name[data-id="new"] {
    position: relative;
    background-color: #005BAC;
    border-top:  1px solid #979CA1;
    border-left:  1px solid #979CA1;
}

.products-table .product-name[data-id="2cam"] {
    background-color: #3384D6;
    border-top:  1px solid #979CA1;
}

.products-table .product-name[data-id="1cam"] {
    background-color: #6B7075;
    border-top:  1px solid #979CA1;
    border-right:  1px solid #979CA1;
}

/*NEWアイコン*/
.products-table .product-name[data-id="new"] .new-icon {
    position: absolute;
    top: 0;
    left: 0;
    background-color: #FCC800;
    color: #1A1C21;
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.3;
    height: 16px;
    padding: 0 6px;
}

.products-table th[rowspan]{
    width: 14%;
    padding: 0 3px;
    border: 1px solid #DBDEE3;
    border-left: 1px solid #979CA1
}

.products-table tr:nth-child(2) > th { /*保険料（月額）の枠スタイル*/
    border: 1px solid #979CA1;
    border-right: 0;
    border-bottom: 0;
}

.products-table td:last-child {
    border-right: 1px solid #979CA1;
}

.products-table th[rowspan="8"],
.products-table tr:last-child > th,
.products-table tr:last-child > td {
    border-bottom: 1px solid #979CA1;
}

.products-table tr:nth-child(odd) > th { /*奇数列目の見出し背景色を上書き*/
    background-color: #F2F3F5;
}

.products-table tr > th[rowspan] { /*行またぎの見出しの背景色を上書き*/
    background-color: #FFFFFF;
    text-align: center;
    line-height: 1.125;
}

.products-table tr > th.hidden { /*先頭行の隅を隠す*/
    background-color: initial;
    width: 27%;
    border: 0;
}

.products-table tr > th:first-child { /*縦書きのセルの幅を指定*/
    width: 7%;
}

/*tdのスタイル*/
.products-table td[data-id="new"] {
    background-color: #E5EFFA;
}

.products-table tr:nth-child(odd) > td[data-id="new"] {
    background-color: #CCE0F5;
}

.products-table td[data-id="2cam"] {
    background-color: #F2F7FC
}

.products-table tr:nth-child(odd) > td[data-id="2cam"] {
    background-color: #E5EFFA;
}

.products-table td[data-id="1cam"] {
    background-color: #FAFAFA;
}

.products-table tr:nth-child(odd) > td[data-id="1cam"] {
    background-color: #F2F3F5;
}

.table-wrapper + .note {
    margin-top: 32px;
}

/* 製品ラインアップ -sp*/
@media only screen and (max-width: 768px) {
    #section-lineup {
        margin-top: 11px;
    }

    #section-lineup,
    #section-setup,
    #section-utilizing,
    #section-column,
    #section-movie {
        padding-top: 69px;
    }

    #section-lineup .products-box {
        flex-direction: column;
        gap: 0;
    }

    #section-lineup .product-unit {
        width: 100%;
    }

    #section-lineup .product-unit[data-id="new"] .details {
        position: relative;
        align-items: flex-start;
    }

    #section-lineup .product-unit .img {
        width: 100%;
        max-width: 304px;
        height: auto;
        margin: 32px auto 0;
        align-items: center;
    }

    #section-lineup .product-unit .img[data-id="new"] {
        width: 100%;
        max-width: 304px;
        height: auto;
        margin: 8px auto 0;
        align-items: center;
    }

    #section-lineup .product-unit[data-id="new"] .new-icon {
        position: absolute;
        top: 0;
        left: 8px;
        font-size: 1rem;
        margin-top: 8px;
        padding: 1px 4px 0;
    }

    #section-lineup .product-unit[data-id="new"] .details {
        padding: 8px 0 3px;
    }

    #section-lineup .product-unit[data-id="two"] .details,
    #section-lineup .product-unit[data-id="one"] .details {
        margin-top: 16px;
    }

    #section-lineup .product-unit .details {
        padding: 0;
    }

    #section-lineup .product-unit .hdg {
        font-size: 1.5rem;
    }

    #section-lineup .product-unit .hdg .sp-blank {
        display: inline;
    }

    #section-lineup .product-unit .hdg > .name,
    #section-lineup .product-unit .hdg > .monthly {
        font-size: 1.5rem;
    }

    #section-lineup .product-unit .hdg > .charge {
        font-size: 2.1rem;
    }

    section[id^="section-"] .product-unit .nav-button {
        height: 40px;
        margin-top: 16px;
        padding: 7px 0;
    }

    section[id^="section-"] .product-unit .nav-button > p {
        font-size: 1.5rem;
        line-height: 1.1;
    }

    #section-lineup .txt-box {
        padding-top: 48px;
        gap: 8px;
    }

    .scroll-guide-txt {
        display: block;
    }

    .table-wrapper {
        padding-top: 32.5px;
    }

    .table-scroll {
        width: 100vw;
        overflow-x: auto;
        margin-left: calc(50% - 50vw);
        padding: 21px 19.5px 0;
    }

    .products-table {
        width: 434px;
    }

    .products-table .product-name {
        font-size: 1.2rem;
        padding: 8.5px 0;
    }

    .products-table .product-name .only-pc {
        display: none;
    }

    .products-table .product-name .only-sp {
        display: block;
    }

    .products-table .product-name[data-id="new"] .new-icon {
        top: calc(-2rem - 1px);
        left: -1px;
        content: "NEW";
        background-color: #FCC800;
        color: #1A1C21;
        line-height: initial;
        height: auto;
    }

    .products-table tr > th {
        font-size: 1.2rem;
        padding: 8px;
    }

    .products-table tr > th[rowspan] {
        padding: 0;
    }

    .products-table tr > td {
        font-size: 1.4rem;
        padding: 10px 0;
    }

    .products-table tr > td.sp-resize,
    .products-table tr > td > span {
        font-size: 1.2rem;
    }

    .table-wrapper + .note {
        margin-top: 16px;
    }
}

/*ドライブレコーダーの取付について*/
#section-setup .txt-box {
    max-width: 736px;
    margin: 0 auto;
}

#section-setup .txt-box p {
    text-align: justify;
}

.nav-button-box {
    margin: 32px auto 0;
    display: flex;
    justify-content: center;
    gap: 32px;
}

.nav-button {
    background-color: #005BAC;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    width: 100%;
    max-width: 416px;
    border: 0px solid #005BAC;
    border-radius: 15vw;
    display: block;
}

.nav-button a {
    height: 56px;
    padding: 16px 28px;
    display: block;
}

body[data-id="setup"] .icon.blank02,
body[data-id="top"] .icon.blank02 {
    width: 14px;
    min-width: 14px;
    display: inline-block;
    transform: translateY(1px);
}

body[data-id="top"] #section-setup .icon.blank02 img {
    display: flex;
    align-items: center;
}

.nav-button .txt {
    color: #FFFFFF;
    margin-right: 6px;
}

#section-setup .nav-button .txt img,
#section-setup .nav-button .chevron-right img {
    display: none;
}

.nav-button .chevron-right,
.nav-button .chevron-left {
    display: inline-block;
    vertical-align: middle;
    color: #FFFFFF;
    line-height: 1;
    width: 9px;
    height: 9px;
    border: 2px solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: rotate(45deg);
}

.nav-button .chevron-left {
    transform: rotate(-135deg);
}

/*ドライブレコーダーの取付について-sp*/
@media only screen and (max-width: 768px) {
    #section-setup .txt-box {
        width: 100%;
        margin: 0 auto;
    }

    #section-setup .txt-box p {
        font-size: 1.5rem;
    }

    #section-setup .txt-box .note p {
        text-align: justify;
        font-size: 1.3rem;
    }

    .nav-button-box {
        margin: 16px 0 0;
        flex-direction: column;
        gap: 16px;
    }

    .nav-button {
        font-size: 1.5rem;
        line-height: 1.1;
        max-width: initial;
        height: 40px;
        border-radius: 15vw;
    }

    .nav-button a {
        padding: 11px 14px;
        height: 40px;
        line-height: 1.3;
    }
}

/* データ利活用の方針について */
#section-utilizing .only-pc .contents-wrapper {
    margin: 0 auto;
    max-width: 736px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 64px;
}

#section-utilizing .only-pc {
    display: block;
}

#section-utilizing .only-sp {
    display: none;
}

#section-utilizing .upper-contents {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
}

.upper-content-unit {
    width: calc(100% / 2 - 8px);
}

/* セクションごとにグラデーションの開始地点を調整 */
section[id="section-utilizing"] .contents-wrapper.gradation-bg::before {
    background: linear-gradient(180deg, #F2F7FC 29%, #FFFFFF);
}

#section-utilizing .img[data-id="data"] {
    max-width: 256px;
}

#section-utilizing .right-contents {
    max-width: 416px;
}

#section-utilizing .nav-button {
    width: 100%;
    margin-top: 16px
}

@media only screen and (max-width: 768px) {
    #section-utilizing .contents-wrapper {
        padding-top: 36px;
    }

    #section-utilizing .only-pc {
        display: none;
    }

    #section-utilizing .only-sp {
        display: block;
    }

    #section-utilizing .img[data-id="data"] {
        max-width: 144px;
    }
}

/* コラム（仮） */
#section-column .hdg-label {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.65;
    text-align: center;
}

#section-column .bulleted {
    max-width: 736px;
    margin: 16px auto 0;
    display: flex;
    gap: 8px 32px;
    flex-wrap: wrap;
}

#section-column .bulleted > li {
    color: #6B7075;
    width: calc(100% / 3 - 22px);
}

#section-column .bulleted > li::before {
    background-color: #6B7075;
}

@media only screen and (max-width: 768px) {

    #section-column .hdg-label {
        font-size: 1.6rem;
        line-height: 1.5;
    }

    #section-column .bulleted {
        max-width: 192px;
        margin: 8px auto 0;
        flex-direction: column;
    }

    #section-column .bulleted > li {
        width: 100%;
    }
}

/*映像ギャラリー*/

/* セクションごとにグラデーションの開始地点を調整 */
section[id="section-movie"] .contents-wrapper.gradation-bg::before {
    background: linear-gradient(180deg, #F2F7FC 70%, #FFFFFF);
}

#section-movie .hdg-label {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}

#section-movie .txt {
    text-align: justify;
    margin-top: 16px;
}

#section-movie .txt > b {
    font-size: 20px;
    text-align: center;
    margin-bottom: 16px;
    padding: 0;
    border-bottom: 0;
}

.lay-column-01.lay-02 {
    margin-top: 32px;
}

.lay-column-01.lay-02 > .col {
    padding: 0 48px;
}

body[data-id="top"] #section-movie .blsc-inner {
    height: 324px;
}


.lay-column-01.col2 > .col:nth-child(n+3) {
    margin-top: 64px;
}

body[data-id="top"] p.txt-solicitation {
    margin: 32px auto !important;
    font-size: 1.6rem;
    text-align: right;
}

/*映像ギャラリー-sp*/
@media only screen and (max-width: 768px) {
    #section-movie .hdg-label {
        font-size: 1.8rem;
    }

    #section-movie .txt {
        font-size: 1.5rem;
        margin-top: 16px;
    }

    #section-movie .txt > b {
        font-size: 1.6rem;
        margin-bottom: 8px;
        padding: 0;
    }

    .lay-column-01.lay-02 {
        margin-top: 16px;
        margin-left: 0;
        margin-right: 0;
    }

    .lay-column-01.lay-02 > .col {
        padding: 0;
    }

    .lay-column-01.col2 > .col + .col {
        margin-top: 48px;
    }

    body[data-id="top"] p.txt-solicitation {
        margin: 16px auto;
        font-size: 1.5rem;
    }
}

/*注釈*/
.annotation.bg {
    position: relative;
    margin-top: 101px;
    padding: 64px 0;
}

.annotation.bg::before {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -1;
    content: "";
    background: #f2f2f2;
    width: 100vw;
    height: 100%;
    transform: translateX(-50%);
    display: block;
}

.annotation .txt-box {
    max-width: 768px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.annotation .txt-box p {
    text-align: justify;
}

/*注釈-sp*/
@media only screen and (max-width: 768px) {
    .annotation.bg {
        margin-top: 60px;
        padding: 32px 0;
    }
}

/* お問い合わせ欄 */
.inner-inquiry {
    padding: 64px 0;
}

.inner-inquiry::before {
    background: #005BAC;
}

#main>.inner>:last-child::before {
    height: 100%;
}

.inner-inquiry>.txt-01 {
    font-size: 2.4rem;
    margin-bottom: 16px !important;
}

.inner-inquiry p+* {
    font-size: 1.6rem;
}

.inner-inquiry>.tel {
    margin: 8px 0;
}

.inner-inquiry>.tel>.num {
    font-size: 2.4rem;
}

.inner-inquiry>.tel+* {
    margin-top: 8px;
}

/* お問い合わせ欄 */
@media only screen and (max-width: 768px) {
    .inner-inquiry {
        padding: 32px 0;
    }

    .inner-inquiry>.txt-01 {
        font-size: 1.8rem;
        margin-bottom: 8px !important;

    }

    .inner-inquiry>.txt-01+* {
        font-size: 1.5rem;
    }

    .inner-inquiry>.tel {
        margin-top: 4px;
    }

    .inner-inquiry>.tel .icon {
        max-width: 30px;
    }

    .inner-inquiry>.tel>.num {
        font-size: 1.8rem;
        line-height: 1.5;
    }

    .inner-inquiry>.tel+* {
        font-size: 1.5rem;
        margin-top: 4px;
    }
}

/*全体共通部分のスタイルを上書き-sp*/
@media only screen and (max-width: 768px) {
    body[data-id="top"] {
        font-size: 1.5rem
    }

    .inner {
        max-width: 672px;
    }

    .note-01 > li {
        font-size: 1.3rem;
        line-height: 1.5;
        padding-left: 16.25px;
    }

    .sp-inner {
        max-width: 88.12%;
        margin-right: auto;
        margin-left: auto;
    }

    img.only-pc,
    br.only-pc {
        display: none;
    }

    img.only-sp,
    br.only-sp {
        display: block;
    }
}


/* 取付方法ページ */
.hdg1-01 {
    font-size: 4rem;
    font-weight: bold;
    text-align: center;
    padding: 63px 0 0;
    word-break: auto-phrase;
}

.hdg1-01 br.first {
    display: none;
}

.hdg1-01 .only-sp {
    display: none;
}

@media only screen and (max-width: 1024px) {
    .hdg1-01 br.first {
        display: block;
    }
}

.hdg1-01 .only-sp {
    display: none;
}

body[data-id="setup"] .inner {
    max-width: 100%;
    padding-top: 16px;
}

.hdg1-01,
.txt-read-01,
.lay-img-02 {
    max-width: 929px;
    margin: 0 auto;
}

.lay-img-02 .list-note-01 > li {
    padding-left: 17.5px;
}

.read-and-note {
    max-width: 736px;
    margin: 0 auto;
    text-align: justify;
}

.txt-read-01 {
    font-weight: normal;
    line-height: 1.7;
}

.lay-img-02 {
    margin-top: 16px;
}

body[data-id="utilizing"] .pdf-icon,
body[data-id="utilizing"] .icon.blank04 {
    width: 14px;
    min-width: 14px;
    margin-left: 8px;
    display: inline-block;
    transform: translateY(1px);
}

body[data-id="utilizing"] .anchor-links,
body[data-id="setup"] .anchor-links {
    margin-top: 128px;
}

body[data-id="utilizing"] .anchor-links ul,
body[data-id="setup"] .anchor-links ul {
    max-width: initial;
    padding: 32px 0;
}

body[data-id="utilizing"] .anchor-links ul > li,
body[data-id="setup"] .anchor-links ul > li {
    width: calc((100% - 64px) / 3);
    max-width: 416px;
}

body[data-id="utilizing"] .anchor-links ul > li > button .txt,
body[data-id="setup"] .anchor-links ul > li > button .txt {
    font-size: 1.6rem;
}

#section-setup-movies,
#section-setup-myself,
#section-setup-other,
#section-column {
    padding-top: 101px;
}

#section-setup-movies {
    margin-top: 27px;
}

#section-setup-myself {
    padding-bottom: 27px;
}

/* セクションごとにグラデーションの開始地点を調整 */
section[id="section-setup-movies"] .contents-wrapper.gradation-bg::before {
    background: linear-gradient(180deg, #F2F7FC 87%, #FFFFFF);
}

.top-exp {
    font-size: 1.6rem;
    max-width: 736px;
    margin: 0 auto 32px !important;
    text-align: justify;
}

body[data-id="setup"] .note {
    margin-top: 16px;
}

#section-setup-movies .products-box {
    max-width: 1312px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 48px 32px;
}

#section-setup-movies .products-box .product-unit {
    max-width: 416px;
}

#section-setup-movies .product-unit .hdg {
    font-size: 2.4rem;
    text-align: center;
}

#section-setup-movies .product-unit .hdg .sp-only {
    display: none;
}

#section-setup-movies .img-and-hdg {
    margin-bottom: 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
}

#section-setup-movies .img[data-id="new"],
#section-setup-movies .img[data-id="2camera"],
#section-setup-movies .img[data-id="1camera"] {
    height: 278px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#section-setup-movies .movie-box {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin-top: 30px;
    position: relative;
}

#section-setup-movies .movie-box video-js {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#section-setup-movies .img-box {
    width: 100%;
    margin-top: 32px;
}

#section-setup-movies .nav-button.only-sp {
    display: none;
}

#section-setup-myself .top-img,
#section-setup-other .top-img {
    overflow: hidden;
    position: relative;
    max-width: 1248px;
    max-height: 320px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 64px;
}

#section-setup-myself .top-img {
    margin-top: 40px;
}

#section-setup-myself .top-img img,
#section-setup-other .top-img img {
    width: 100%;
}

.hdg-blue-bg {
    background-color: #005BAC;
    max-width: 992px;
    padding: 9px 0 8px;
    margin: 64px auto 32px;
    color: #FFFFFF;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}

#section-setup-myself .txt-box,
#section-setup-other .txt-box {
    max-width: 736px;
    margin: 0 auto;
    font-size: 1.6rem;
    line-height: 1.68;
    text-align: justify;
}

#section-setup-myself .products-box {
    display: flex;
    justify-content: center;
    gap: 48px 32px;
    margin: 0 auto;
}

#section-setup-myself .product-unit {
    flex: 0 1 416px;
}

#section-setup-myself .products-box .img-row {
    display: flex;
    gap: 32px;
    justify-content: center;
}

#section-setup-myself .products-box .img {
    height: 193px;
    display: flex;
    justify-content: center;
    align-items: center;
}

#section-setup-myself .products-box .product-unit:first-child .img {
    max-width: 200px;
    margin: 0 auto;
}

#section-setup-myself .products-box .hdg {
    font-size: 2rem;
    text-align: center;
    margin-top: 16px;
}

#section-setup-myself .flow-col {
    display: flex;
    flex-direction: column;
    gap: 31px;
    margin-top: 32px;
}

#section-setup-myself .flow-col .txt {
    width: 100%;
    background-color: #3384D6;
    border-radius: 5px;
    padding: 8px 27px;
    color: #FFFFFF;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    position: relative;
}

#section-setup-myself .flow-col .txt:nth-child(n+2)::before {
    content: "";
    position: absolute;
    width: 0px;
    height: 0px;
    top: calc(-31px / 2);
    left: 50%;
    transform: translate(-50%, -50%);
    border-top: 15px solid #979CA1;
    border-right: 32px solid transparent;
    border-left: 32px solid transparent;
}

#section-setup-other .hdg .only-sp {
    display: none;
}

#section-setup-other .movie-hdg {
    text-align: center;
    font-size: 2.4rem;
    margin: 32px 0 16px;
}

#section-setup-other .products-box {
    display: flex;
    justify-content: center;
    gap: 32px;
}

#section-setup-other .products-box .product-unit {
    flex: 0 1 416px;
}

#section-setup-other .movie-title {
    font-size: 2rem;
    text-align: center;
    font-weight: bold;
    margin-top: 8px;
}

#section-setup-other .nav-button {
    margin: 32px auto;
}


body[data-id="setup"] .icon.blank02 {
    transform: translateY(-0.5px);
}

/* セクションごとにグラデーションの開始地点を調整 */
section[id="section-setup-other"] .contents-wrapper.gradation-bg::before {
    background: linear-gradient(180deg, #F2F7FC 87%, #FFFFFF);
}

#section-setup-other .note {
    line-height: 1.7;
}

#section-setup-other .note p {
    margin-top: 0;
}

body[data-id="setup"] .nav-button[data-ts="top"] .txt {
    margin-right: 0;
}

body[data-id="setup"] .nav-button {
    margin: 101px auto 56px;
}

body[data-id="setup"] .nav-button .only-sp {
    display: none;
}

body[data-id="setup"].Mac .nav-button .chevron-left {
    transform: rotate(-135deg) translateY(2px);
}


@media only screen and (max-width: 768px) {
    body[data-id="setup"] .main-visual {
        margin: 0 -20px;
    }

    .hdg1-01 {
        font-size: 2.4rem;
        padding: 32px 0 0;
    }

    .hdg1-01 .only-sp {
        display: block;
    }

    .read-and-note {
        max-width: 88.12%;
    }

    .txt-read-01 {
        font-size: 1.5rem;
    }

    .lay-img-02 {
        font-size: 1.3rem;
        margin-top: 8px;
    }

    .lay-img-02 .list-note-01 > li {
        line-height: 1.7;
        padding-left: 16.25px;
    }

    body[data-id="utilizing"] .anchor-links,
    body[data-id="setup"] .anchor-links {
        margin-top: 80px;
    }

    body[data-id="utilizing"] .anchor-links ul ,
    body[data-id="setup"] .anchor-links ul {
        align-items: center;
        gap: 16px;
        padding: 16px 0;
    }

    body[data-id="utilizing"] .anchor-links ul > li ,
    body[data-id="setup"] .anchor-links ul > li {
        width: 100%;
        max-width: none;
    }

    body[data-id="utilizing"] .anchor-links ul > li > button .txt,
    body[data-id="setup"] .anchor-links ul > li > button .txt {
        font-size: 1.5rem;
    }

    body[data-id="setup"] .top-exp .pc-only {
        display: none;
    }

    #section-setup-movies,
    #section-setup-myself,
    #section-setup-other,
    #section-column {
        padding-top: 69px;
    }

    #section-setup-movies,
    #section-setup-other {
        margin-top: 11px;
    }

    #section-setup-myself {
        padding-bottom: 0;
    }

    #section-setup-movies .contents-wrapper {
        padding: 36px 0 11px;
    }

    #section-setup-movies .top-exp {
        font-size: 1.5rem;
    }
    
    #section-setup-movies  .products-box {
        flex-direction: column;
    }

    #section-setup-movies .product-unit .hdg {
        font-size: 1.6rem;
        text-align: start;
        white-space: nowrap;
    }

    #section-setup-movies .product-unit .hdg .sp-only {
        display: block;
    }

    #section-setup-movies .img-and-hdg {
        flex-direction: row;
        align-items: center;
        justify-content: center;
    }

    #section-setup-movies .img-and-hdg img{
        max-width: 144px;
    }

    #section-setup-movies .img[data-id="new"],
    #section-setup-movies .img[data-id="2camera"],
    #section-setup-movies .img[data-id="1camera"] {
        height: auto;
    }

    #section-setup-movies .nav-button {
        margin-top: 16px;
    }

    #section-setup-movies .nav-button.only-sp {
        display: flex;
    }

    #section-setup-movies .product-unit .nav-button > p {
        margin: 4px 0 2px;
    }

    #section-setup-movies .movie-box {
        display: none;
    }

    #section-setup-myself .top-img,
    #section-setup-other .top-img {
        margin-bottom: 32px;
    }

    #section-setup-myself .top-img {
        margin-top: 20px;
    }

    #section-setup-myself .top-img + .hdg-blue-bg,
    #section-setup-other .top-exp + .hdg-blue-bg {
        margin-top: 32px;
    }

    #section-setup-myself .hdg-blue-bg,
    #section-setup-other .hdg-blue-bg {
        font-size: 2.1rem;
        padding: 6px 0 2px;
        margin: 46px auto 16px;
    }

    .Android #section-setup-myself .hdg-blue-bg,
    .Android #section-setup-other .hdg-blue-bg {
        padding: 3px 0;
    }

    #section-setup-myself .txt-box,
    #section-setup-other .txt-box {
        max-width: none;
        font-size: 1.5rem;
        line-height: 1.5;
    }

    #section-setup-myself .txt-box,
    #section-setup-other .txt-box,
    #section-setup-myself .products-box,
    #section-setup-other .top-exp {
        width: 88.12%;
    }

    #section-setup-myself .products-box {
        flex-direction: column;
        align-items: center;
    }

    #section-setup-myself .products-box .img-row {
        gap: 18px;
    }

    #section-setup-myself .products-box .img {
        height: auto;
    }

    #section-setup-myself .products-box .product-unit:first-child .img {
        max-width: 144px;
    }
    #section-setup-myself .products-box .product-unit:last-child .img {
        max-width: 140px;
        height: 139px;
    }

    #section-setup-myself .products-box .hdg {
        font-size: 1.6rem;
        margin-top: 8px;
    }

    #section-setup-myself .product-unit {
        max-width: none;
        width: 100%;
        padding: 0 15px;
        flex: initial;
    }

    #section-setup-myself .products-box .img {
        width: fit-content;
        margin: 0 auto;
        max-width: calc((100% - 32px) / 2);
    }

    #section-setup-myself .products-box .img-row .img {
        max-width: none;
    }

    #section-setup-myself .hdg .only-pc {
        display: none;
    }

    #section-setup-myself .flow-col {
        gap: 27px;
        margin-top: 12px;
    }

    #section-setup-myself .flow-col .txt {
        font-size: 1.5rem;
        padding: 12px 5px;
    }

    #section-setup-myself .flow-col .txt:nth-child(n+2)::before {
        border-top: 11px solid #979CA1;
        border-right: 24px solid transparent;
        border-left: 24px solid transparent;
        top: calc(-27px / 2);
    }

    #section-setup-other .top-exp {
        font-size: 1.5rem;
    }

    #section-setup-other .hdg .only-sp {
        display: block;
    }

    #section-setup-other .movie-hdg {
        font-size: 1.8rem;
        line-height: 1.7;
    }

    #section-setup-other .products-box {
        flex-direction: column;
    }

    #section-setup-other .products-box .product-unit {
        flex: initial;
    }

    #section-setup-other .movie-title {
        font-size: 1.6rem;
    }

    body[data-id="setup"] .nav-button {
        max-width: 88.12%;
        margin: 69px auto 24px;
    }

    body[data-id="setup"] .nav-button .only-pc {
        display: none;
    }

    body[data-id="setup"] .nav-button .only-sp {
        display: inline-block;
    }
}

/* 利活用ページ */
body[data-id="setup"] sup,
body[data-id="utilizing"] sup {
    position: initial;
}

body[data-id="utilizing"] p:not([class]) {
    margin-top: 0;
}

body[data-id="utilizing"] p {
    letter-spacing: initial;
}

body[data-id="utilizing"] .hdg1-01 {
    padding-top: 64px;
}

body[data-id="utilizing"] .inner {
    padding: 32px 0 128px;
}

.read-and-note .txt-read-hdg {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 16px !important;
}

#section-social-contribution,
#section-safety-services,
#section-non-insurance {
    padding-top: 101px;
}

/* 社会貢献 */
#section-social-contribution {
    margin-top: 27px;
}

body[data-id="utilizing"] .hdg sup {
    font-weight: normal;
}

/* セクションごとにグラデーションの開始地点を調整 */
section[id="section-social-contribution"] .contents-wrapper.gradation-bg::before {
    background: linear-gradient(180deg, #F2F7FC 89.5%, #FFFFFF);
}

body[data-id="utilizing"] .hdg-blue-bg {
    margin-top: 96px;
}

body[data-id="utilizing"] .top-exp {
    margin-bottom: 0;
}

body[data-id="utilizing"] .related-info-box,
body[data-id="utilizing"] .txt-box {
    max-width: 736px;
    margin: 0 auto;
}

body[data-id="utilizing"] .related-info-box a img{
    display: none;
}

body[data-id="utilizing"] .related-info-box .pdf-icon img,
body[data-id="utilizing"] .related-info-box .icon.blank04 img{
    display: block;
}

body[data-id="utilizing"] .txt-box {
    margin-bottom: 32px;
}

body[data-id="utilizing"] .txt-box .sub-hdg {
    font-size: 2.4rem;
    text-align: center;
    margin-top: 96px;
    margin-bottom: 16px !important;
}

body[data-id="utilizing"] .hdg-blue-bg + .txt-box .sub-hdg {
    margin-top: 0;
}

body[data-id="utilizing"] .txt-box .txt-read {
    text-align: justify;
}

body[data-id="utilizing"] .img-box {
    display: flex;
    justify-content: center;
    gap: 32px;
}

.img[data-id="notomap01"],
.img[data-id="notomap02"] {
    max-width: 416px;
}

body[data-id="utilizing"] .related-info-box {
    margin-top: 32px;
}

.related-info-box .hdg {
    line-height: 1.7;
    margin-bottom: 8px !important;
}

.related-info-box .link-box {
    color: #005BAC;
}

.related-info-box .hdg + * {
    margin-top: 8px;
}

.img[data-id="ecodrive01"],
.img[data-id="ecodrive02"],
.img[data-id="ecodrive03"] {
    max-width: 100%;
}

body[data-id="utilizing"] .image-supplement-txt {
    color: #6B7075;
    font-size: 1.4rem;
    text-align: center;
    margin-top: 16px;
}

/* 安全・事故対応サービス */
body[data-id="utilizing"] .flow-box {
    background-color: #F2F7FC;
    max-width: 864px;
    margin: 0 auto;
    padding: 32px 30px;
    border: 1px solid #005BAC;
    border-radius: 10px;
}

#section-safety-services .note {
    margin-top: 16px;
}

.img[data-id="ai01"] {
    max-width: 416px;
}

.img[data-id="ai02"] {
    max-width: 288px;
}

/* 保険外ソリューション */
section[id="section-non-insurance"] .contents-wrapper {
    padding-bottom : 128px;
}

/* セクションごとにグラデーションの開始地点を調整 */
section[id="section-non-insurance"] .contents-wrapper.gradation-bg::before {
    background: linear-gradient(180deg, #F2F7FC 84.74%, #FFFFFF);
}

body[data-id="utilizing"] .nav-button .txt {
    margin-right: 0;
}

body[data-id="utilizing"] .nav-button .only-sp {
    display: none;
}

section[id^="section-contact"] .contents-wrapper {
    padding-bottom : 96px;
}

body[data-id="utilizing"] #section-contact .txt-box {
    margin-bottom: 17px;
}

.contact-table {
    width: 100%;
    max-width: 928px;
    text-align: center;
    line-height: 1.5;
    margin: 0 auto;
    border: 1px solid #979CA1;
    table-layout: fixed;
}

.contact-table a {
    color: #1A1C21;
    text-decoration: none;
}

.contact-table th {
    padding: 8px 0;
    color: #FFF;
    font-family: Meiryo;
    font-weight: 400;
    line-height: 170%;
}

.contact-table th:nth-child(1) {
    width: 46.33%;
}

.contact-table th:nth-child(2) {
    width: 19.18%;
}

.contact-table th.col01 {
    background-color: #005BAC;
}

.contact-table th.col02 {
    background-color: #3384D6;
}

.contact-table td {
    height: 96px;
    padding: 8px;
    font-size: 1.6rem;
    line-height: 170%;
    vertical-align: middle;
}

.contact-table td.col01 {
    background-color: #F8F8F9;
}

.contact-table td.col02 {
    background-color: #F2F2F4;
}

.contact-table td .content-table-device {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.6rem;
    text-align: left;
}

.contact-table td.reception-hours > span {
    display: inline-block;
    text-align: left;
}

.contact-table td .content-table-device div:first-child {
    width: 128px;
    text-align: center;
}

.contact-table td .content-table-device img {
    width: 64px;
}

.contact-table td .content-table-device span {
    display: block;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 170%;
}

.contact-table td .content-table-device span.small-txt {
    font-size: 1.4rem;
    font-weight: 400;
}

body[data-id="utilizing"] .nav-button {
    margin: 32px auto;
}

body[data-id="utilizing"] .contact-table-area.only-sp {
    display: none;
}

/* 利活用ページ-sp */
@media only screen and (max-width: 768px) {
    body[data-id="utilizing"] .main-visual {
        margin: 0 -20px;
    }

    body[data-id="utilizing"] .main-visual img {
        width: 100%;
    }

    body[data-id="utilizing"] {
        font-size: 1.5rem;
    }

    body[data-id="utilizing"] #main {
        line-height: 1.7;
    }

    body[data-id="utilizing"] .inner {
        padding: 16px 0 0;
    }

    body[data-id="utilizing"] .hdg1-01 {
        max-width: 88.12%;
        margin-right: auto;
        margin-left: auto;
        padding-top: 32px;
    }

    .read-and-note .txt-read-hdg {
        font-size: 1.8rem;
    }

    section[id^="section-social-contribution"] .contents-wrapper,
    section[id^="section-safety-services"] .contents-wrapper,
    section[id^="section-non-insurance"] .contents-wrapper {
        max-width: 97.39%;
        margin: 0 auto;
        padding: 20px 0 11px;
    }

    section[id^="section-social-contribution"] .contents-wrapper > *,
    section[id^="section-contact"] .contents-wrapper > *,
    section[id^="section-safety-services"] .contents-wrapper > *,
    section[id^="section-non-insurance"] .contents-wrapper > * {
        max-width: 90.47%;
        margin-right: auto;
        margin-left: auto;
    }

    section[id^="section-social-contribution"] .contents-wrapper .hdg-blue-bg,
    section[id^="section-contact"] .contents-wrapper > .hdg-blue-bg,
    section[id^="section-safety-services"] .contents-wrapper > .hdg-blue-bg,
    section[id^="section-safety-services"] .contents-wrapper > .flow-box,
    section[id^="section-non-insurance"] .contents-wrapper > .hdg-blue-bg {
        max-width: 100%
    }

    section[id^="section-contact"] .contents-wrapper {
        padding: 20px 0 80px;
    }

    body[data-id="utilizing"] .hdg-blue-bg {
        margin-top: 64px;
        padding: 6.5px 0 4px;
        margin-bottom: 16px;
        font-size: 2.1rem;
        line-height: 1.4;
    }

    .Android body[data-id="utilizing"] .hdg-blue-bg {
        padding: 4px;
    }

    #section-social-contribution,
    #section-safety-services,
    #section-non-insurance,
    #section-contact {
        padding-top: 69px;
    }

    #section-social-contribution {
        margin-top: 11px;
    }

    body[data-id="utilizing"] .txt-box {
        margin-bottom: 16px;
    }

    body[data-id="utilizing"] .txt-box .sub-hdg {
        margin-top: 64px;
        margin-bottom: 8px !important;
        font-size: 1.8rem;
    }

    body[data-id="utilizing"] .img-box.column {
        flex-direction: column;
        gap: 16px;
    }

    body[data-id="utilizing"] .img-box {
        gap: 10px;
    }

    body[data-id="utilizing"] .img-box.map {
        gap: 16px;
        flex-direction: column;
    }

    .img[data-id="notomap01"],
    .img[data-id="notomap02"] {
        margin: 0 auto;
    }  

    body[data-id="utilizing"] .top-exp {
        font-size: 1.5rem;
    }

    body[data-id="utilizing"] .related-info-box {
        margin-top: 16px;
    }

    body[data-id="utilizing"] .related-info-box .hdg {
        margin-bottom: 4px !important;
    }

    body[data-id="utilizing"] .related-info-box .hdg + * {
        margin-top: 5px;
    }

    body[data-id="utilizing"] .reception-hours-box {
        margin-top: 8px;
    }

    body[data-id="utilizing"] .reception-hours-box .hdg {
        margin-bottom: 4px !important;
    }

    body[data-id="utilizing"] .reception-hours-box.mb32 {
        margin-bottom: 32px;
    }

    body[data-id="utilizing"] .reception-hours-box.mb32 + .contact-table td {
        height: 68px;
    }

    body[data-id="utilizing"] .image-supplement-txt {
        margin-top: 8px;
        font-size: 1.3rem;
    }

    body[data-id="utilizing"] #section-safety-services .note {
        margin-top: 8px;
    }

    body[data-id="utilizing"] .flow-box {
        padding: 16px;
    }

    body[data-id="utilizing"] .accident-img-box {
        padding: 8px 0;
    }

    body[data-id="utilizing"] .img[data-id="ai01"],
    body[data-id="utilizing"] .img[data-id="ai02"] {
        margin: 0 auto;
    }

    body[data-id="utilizing"] .img[data-id="ai02"] {
        max-width: 207px;
    }

    body[data-id="utilizing"] .contact-table.only-pc {
        display: none;
    }

    body[data-id="utilizing"] .contact-table-area {
        max-width: 100%;
    }

    body[data-id="utilizing"] .contact-table-area.only-sp {
        display: block;
    }

    body[data-id="utilizing"] .contact-table th {
        padding: 4px 0;
    }

    body[data-id="utilizing"] .contact-table th:nth-child(1) {
        width: 76.19%;
    }

    body[data-id="utilizing"] .contact-table th:nth-child(2) {
        width: 23.81%;
    }

    .contact-table td .content-table-device {
        font-size: 1.5rem;
    }

    body[data-id="utilizing"] .contact-table td,
    body[data-id="utilizing"] .contact-table td .content-table-device span {
        font-size: 1.5rem;
        vertical-align: middle;
    }

    body[data-id="utilizing"] .contact-table td a {
        display: inline-block;
        text-align: left;
    }

    body[data-id="utilizing"] .contact-table td .content-table-device div:first-child {
        width: 80px;
        text-align: left;
    }

    body[data-id="utilizing"] .contact-table td .content-table-device .only-sp {
        display: none;
    }

    body[data-id="utilizing"] #section-contact .related-info-box {
        margin-bottom: 16px;
        line-height: 170%;
    }

    body[data-id="utilizing"] .nav-button {
        max-width: 88.12%;
        margin: 0 auto 80px;
    }

    body[data-id="utilizing"] .nav-button .only-pc {
        display: none;
    }

    body[data-id="utilizing"] .nav-button .only-sp {
        display: inline-block;
        font-size: 16px;
    }
}

/* 印刷時に非表示にする要素を指定 */
@media print {
    .sticky-content {
        display: none !important;
    }

    #onetrust-banner-sdk {
        display: none;
    }
}