@charset "utf-8";

/* common -------------------------------- */
/* variable */
:root {
    --clr_main: #0070ba;
}

/* head */
#contents h2 {
    margin: 0 0 35px;
    padding: 0;
    font-size: min(calc(44vw / 768* 100), 22px);
    font-weight: bold;
    color: var(--clr_main);
    text-align: center;
    line-height: 1.6;
}
#contents h2:after {
    display: block;
    content: "";
    width: 40px;
    height: 3px;
    margin: 12px auto 0;
    background: var(--clr_main);
}
#contents h3 {
    margin: 0 0 10px;
    font-size: min(calc(44vw / 768* 100), 22px);
    font-weight: bold;
    color: var(--clr_main);
    text-align: center;
    line-height: 1.4;
}
#contents h3:after {
    display: none;
}
#contents h4 {
    margin: 0 0 10px;
    padding: 5px 8px 3px;
    background: #edf5fe;
    font-size: min(calc(32vw / 768* 100), 16px);
    font-weight: bold;
    color: var(--clr_main);
    line-height: 1.4;
}

/* text */
#contents sup {
    font-size: 70%;
}
#contents .fs_s,
#contents .indent1s,
#contents .indent2s {
    font-size: min(calc(22vw / 768* 100), 11px);
}
.clr_main { color: var(--clr_main); }

/* page top */
:where(.page-top) {
    display: block;
    z-index: 20;
}


/* contents -------------------------------- */
#contents section {
    padding: 30px calc((100% - 800px) / 2);
}
#contents section:nth-of-type(2n) {
    background: none;
}
#contents section .inner {
    margin: 0 60px;
}
#contents section p {
    line-height: 1.6;
}

/* caution */
#contents .caution_copy {
    font-size: min(calc(40vw / 768* 100), 20px);
    font-weight: bold;
    color: #ad2220;
    text-align: center;
}
#contents .caution_txt {
    position: relative;
    margin-bottom: 45px;
    padding: 10px 15px;
    border: 3px solid #ad2220;
    background: #fff;
    color: #ad2220;
}
#contents .caution_txt .ico_arr {
    display: block;
    content: '';
    position: absolute;
    left: calc(50% - 15px);
    bottom: -20px;
    width: 30px;
    height: 15px;
    clip-path: polygon(0 0,50% 100%,100% 0);
    background: #ad2220;
}


/* entry -------------------------------- */
.entry_area {
    width: 470px;
    margin-inline: auto;
}
#contents .entry_area p + p {
    margin-top: 5px;
}

.entry_area .entry_copy {
    display: grid;
    grid-template-columns: 1fr  91px;
    place-items: end stretch;
    grid-gap: 20px;
    margin: 0 0 20px;
}
.entry_area .entry_copy dl {
    position: relative;
    padding: 10px;
    border-radius: 10px;
    border: 5px solid #dbf6ff;
    background: #fff;
}
.entry_area .entry_copy dl:before,
.entry_area .entry_copy dl:after {
    display: block;
    content: "";
    position: absolute;
    right: -20px;
    top: calc(50% - 27px);
    border-style: solid;
    border-width: 26px 0 26px 20px;
    border-color: transparent #dbf6ff transparent;
}
.entry_area .entry_copy dl:after {
    right: -13px;
    top: calc(50% - 22px);
    border-width: 21px 0 21px 16px;
    border-color: transparent #fff transparent;
}
.entry_area .entry_copy dl dt,
.entry_area .entry_copy strong {
    color: var(--clr_main);
}
#contents .entry_area .entry_copy dl dt {
    font-size: min(calc(32vw / 768* 100), 16px);
}

#contents .entry_area a.btn_blu {
    grid-template-columns: 1fr 18px;
    width: 100%;
    min-height: 58px;
    border-radius: 5px;
    background: #f39800;
    background-size: 18px 18px;
    font-size: min(calc(28vw / 768* 100), 14px);
}
#contents .entry_area a.btn_blu strong {
    font-size: min(calc(32vw / 768* 100), 16px);
}
.entry_area a.btn_blu:after {
    width: 18px;
    height: 18px;
    background: url("../img/ico_round_arr.svg") no-repeat left top;
    background-size: contain;
}
.entry_area a.btn_blu[target="_blank"]:after {
    background: url("../img/ico_round_exlink.svg") no-repeat left top;
    background-size: contain;
}

/* fixed_cta entry */
#contents .fixed_cta {
    width: calc(100% - 12px);
    bottom: 0;
    left: 50%;
}
.fixed_cta .entry_area {
    width: 100%;
    padding: 15px calc((100% - 470px) / 2) 5px;
    background: rgba(255, 255, 255, 0.8);
    transform: translateX(-50%);
}


/* swiper -------------------------------- */
.swiper-container { 
    padding: 0 0 30px;
}
#contents .swiper-container .swiper-button-prev,
#contents .swiper-container .swiper-button-next { 
    display: none;
}


/* accordion -------------------------------- */
.acc_area {
    margin: 0 0 25px;
}
.acc_area .acc_inner {
    background: #fff;
}
#contents .acc_area .acc_open,
#contents .acc_area .acc_close span {
    position: relative;
    border: 2px solid var(--clr_main);
    background: #fff;
    font-weight: bold;
    color: var(--clr_main);
    line-height: 1.3;
    cursor: pointer;
}
.acc_area .acc_close span:hover {
     opacity: var(--main-hover-opacity);
}
.acc_short .acc_open:before,
.acc_short .acc_open:after,
.acc_area .acc_close span:after {
    display: block;
    content: "";
    position: absolute;
    right: 12px;
    top: calc(50% - 1px);
    width: 10px;
    height: 2px;
    background: var(--clr_main);
}

/* acc_long */
#contents .acc_long .acc_open {
    padding: 8px 40px 5px 10px;
    border-radius: 5px;
    background: #fff url(../img/ico_round_blu.svg) no-repeat right 10px  center;
    background-size: 18px 18px;
    font-size: min(calc(32vw / 768* 100), 16px);
}
#contents .acc_long.open .acc_open {
    border-radius: 5px 5px 0 0;
}
.acc_long .acc_open:before,
.acc_long .acc_open:after {
    right: 14px;
    top: calc(50% - 1px);
    width: 10px;
    height: 2px;
    background: #fff;
}
.acc_long .acc_inner {
    text-align: left;
    border-radius: 0 0 5px 5px;
    border: 2px solid var(--clr_main);
    border-top: none;
}

/* acc_short */
.acc_short {
    text-align: center;
}
.acc_short .acc_inner {
    text-align: left;
    overflow:hidden;
}

#contents .acc_short .acc_open {
    width: 150px;
    padding: 5px 28px 4px 30px;
    margin-inline: auto;
    border-radius: 50px;
    font-size: min(calc(28vw / 768* 100), 14px);
    white-space: nowrap;
}
.acc_short.open .acc_open {
    border-radius: 50px;
}
.acc_short .acc_open:before {
    transform: rotate(90deg);
}
.acc_short.open .acc_open:before {
    display: none;
}
.acc_short .acc_open span:before {
    display: block; 
    content: "\03082\03063\03068\0898b\0308b";
}
.acc_short.open .acc_open span:before {
    content: "\09589\03058\0308b";
}

/* acc_close */
#contents .acc_area .acc_close {
    margin: 30px 0 20px;
    text-align: center;
}
.acc_area .acc_close span {
    display: block;
    width: 150px;
    padding: 5px 28px 4px 30px;
    margin-inline: auto;
    border-radius: 50px;
    font-size: min(calc(28vw / 768* 100), 14px);
}

/* acc_list */
.acc_area .acc_list {
    padding: 20px 20px 0;
}


/* tab -------------------------------- */
.tab_area .tab_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    place-content: center;
    place-items: center stretch;
    grid-gap: 3px;
    position: relative;
    margin: 0 auto;
    padding: 0 100px;
    background: linear-gradient(transparent calc(100% - 2px), var(--clr_main) 2px);
    background-size:100% calc(100%);
}
.tab_area .tab_list li {
    display: grid;
    place-items: center;
    padding: 8px 5px 5px;
    border-radius: 8px 8px 0 0;
    border: 2px solid var(--clr_main);
    border-bottom: 0;
    background: var(--clr_main);
    font-size: min(calc(28vw / 768* 100), 14px);
    font-weight: bold;
    color: #fff;
    text-align: center;
    line-height: 1.3;
}
.tab_area .tab_list li span {
    display: grid;
    place-items: center;
}
.tab_area .tab_list li.active {
    margin-top: -3px;
    background: #edf5fe;
    color: var(--clr_main);
    transform: scaleY(1.15);
    backface-visibility: hidden;
}
.tab_area .tab_list li.active span {
    margin-bottom: -1px;
    transform: scaleY(0.85);
}
.tab_area .tab {
    padding: 35px 60px 20px;
    background: #edf5fe;
}


/* content_menu -------------------------------- */
#content_menu .anchor_menu {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    place-content: center;
    place-items: center stretch;
    grid-gap: 10px;
    margin: 0 60px;
}
#content_menu .anchor_menu li {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
}
#content_menu .anchor_menu a {
    display: block;
    place-content: center;
    position: relative;
    padding: 15px 5px 32px;
    border-radius: 5px;
    background: var(--clr_main);
    font-weight: bold;
    color: #fff;
    text-align: center;
}
#content_menu .anchor_menu a:after {
    display: block;
    content: "";
    position: absolute;
    left: 48.7%;
    bottom: 10px;
    width: 18px;
    height: 18px;
    background: url("../img/ico_round_arr.svg") no-repeat left top;
    background-size: contain;
    transform: rotate(90deg);
}


/* content01 -------------------------------- */
/* case_sign */
dl.case_sign {
    display: grid;
    grid-template-columns: 225px 1fr;
    margin: 0 auto 30px;
    background: #fff;
}
dl.case_sign dt {
    place-content: center;
    position: relative;
    background: #c6e5ff;
    font-size: min(calc(32vw / 768* 100), 16px);
    font-weight: bold;
    text-align: center;
}
dl.case_sign dt:after {
    display: block;
    content: '';
    position: absolute;
    right: -9px;
    top: calc(50% - 12px);
    width: 11px;
    height: 25px;
    clip-path: polygon(0 0, 0 100%, 100% 50%);
    background: #c6e5ff;
}
dl.case_sign dd {
    display: grid;
    grid-template-columns: 1fr 148px;
    place-items: center;
    grid-gap: 10px;
    padding: 10px 20px 10px 30px;
}
dl.case_sign dd p {
    width: 100%;
}
#contents dl.case_sign p strong {
    display: block;
    color: var(--clr_main);
}

/* case list */
dl.case_list {
    margin: 0 0 30px;
    border-radius: 5px;
    border: 2px solid var(--clr_main);
    background: #fff;
}
dl.case_list:has(+ dl.case) {
    margin-bottom: 20px;
}
dl.case_list dt {
    padding: 3px 10px;
    border-radius: 1px 1px 0 0;
    background: var(--clr_main);
    font-size: min(calc(32vw / 768* 100), 16px);
    font-weight: bold;
    color: #fff;
}
dl.case_list dd {
    padding: 10px 38px 30px;
}
dl.case_list ul li {
    display: grid;
    grid-template-columns: 290px 1fr;
    place-content: start;
    place-items: start stretch;
    grid-gap: 10px;
    margin: 20px 0 0;
}
#contents dl.case_list ul h4 {
    grid-area: 1 / 1 / 1 / 3;
    margin-bottom: 0;
}
dl.case_list ul ul li {
    display: block;
    margin: 5px 0 0;
    padding-left: 1em;
    text-indent: -0.5em;
    font-size: min(calc(28vw / 768* 100), 14px);
    line-height: 1.5;
}
dl.case_list ul ul li:first-of-type {
    margin-top: 0;
}
dl.case_list ul ul li:before {
    display: inline-block;
    content: "\025cf";
    margin-right: 1px;
    color: var(--clr_main);
}
dl.case_list ul ul .indent1s {
    display: block;
    margin-top: 5px;
    padding-left: 0;
}
dl.case_list .acc_area {
    margin-bottom: 0;
}

/* tab_addition */
ul.rowlist {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    place-items: center;
    grid-gap: 10px;
    padding: 20px 32px 0;
}

#tab03 .tab_addition {
    display: grid;
    grid-template-columns: 1fr 172px;
    grid-gap: 30px;
}
#tab03 .tab_addition strong {
    display: block;
    margin-bottom: 15px;
    font-size: min(calc(32vw / 768* 100), 16px);
    line-height: 1.4;
}

#contents section #tab03 .inner {
    margin: 0 38px;
    padding: 20px 0 0;
}


/* content02 -------------------------------- */
/* check_item */
.check_item {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 30px 20px;
    margin: 0 0 30px;
}

/* checklist */
ul.checklist li {
    padding: 5px 0 0 22px;
    background: url("../img/ico_check.svg") no-repeat left 5px;
    font-size: min(calc(28vw / 768* 100), 14px);
    font-weight: normal;
}
ul.checklist li:before {
    background: none;
}

/* pointlist */
ul.pointlist {
    display: grid;
    grid-template-columns: repeat(3, 110px);
    place-content: center;
    place-items: center stretch;
    grid-gap: 12px;
    padding: 30px 0;
}
ul.pointlist li {
    display: grid;
    place-content: center;
    background: #ffe475;
    height: 110px;
    padding-top: 8px;
    border-radius: 100px;
    font-size: min(calc(24vw / 768* 100), 12px);
    font-weight: bold;
    text-align: center;
}
ul.pointlist li span {
    display: block;
}
ul.pointlist li strong {
    display: inline-block;
    font-size: min(calc(48vw / 768* 100), 24px);
}
ul.pointlist li strong + span {
    margin-top: -4px;
}


/* content03 -------------------------------- */
#content03 .tab_area .tab_list li.active {
    transform: scaleY(1.21);
}

/* equipment_list */
ul.eqpt_list li {
    margin: 20px 0 0;
    padding: 20px 40px;
    background: #fff;
}
ul.eqpt_list li:first-of-type {
    margin-top: 0;
}
#contents ul.eqpt_list .caution_txt {
    margin: 10px 0 0;
    padding: 5px 10px;
    border-width: 1px;
}

/* equipment_data */
ul.eqpt_list .eqpt_data {
    display: grid;
    grid-template-columns: 290px 1fr;
    grid-gap: 10px 18px;
}
ul.eqpt_list .eqpt_data dl dt {
    font-size: min(calc(40vw / 768* 100), 20px);
    font-weight: bold;
}
ul.eqpt_list .eqpt_data dl dt span {
    display: inline-block;
    font-size: min(calc(28vw / 768* 100), 14px);
    font-weight: normal;
}
ul.eqpt_list .eqpt_data dl dt span:first-of-type {
    display: block;
}
ul.eqpt_list .eqpt_data dl dd {
    margin: 0 0 5px;
}
ul.eqpt_list .eqpt_data dl dd.lease {
    font-size: min(calc(32vw / 768* 100), 16px);
    font-weight: bold;
    color: #ad2220;
}
ul.eqpt_list .eqpt_data dl dd.lease strong {
    font-size: min(calc(56vw / 768* 100), 28px);
}
ul.eqpt_list .eqpt_data dl dd.lease span {
    font-size: min(calc(44vw / 768* 100), 22px);
}
ul.eqpt_list .eqpt_data dl dd.price {
    font-size: min(calc(24vw / 768* 100), 12px);
}
#contents ul.eqpt_list .eqpt_data p.eqpt_note {
    grid-area: 2 / 1 / 2 / 3;
    margin: 0;
    padding: 10px;
    background: #f1f1f1;
    font-size: min(calc(22vw / 768* 100), 11px);
    line-height: 1.2;
}
#contents ul.eqpt_list p.eqpt_add {
    margin: 10px 0 0;
    padding: 10px;
    border: 1px solid #bdbdbd;
    font-size: min(calc(22vw / 768* 100), 11px);
    line-height: 1.2;
}

/* eqpt_detail */
#content03 .tab .eqpt_detail {
    margin: 20px 0 30px;
}

#content03 #tab04 .eqpt_detail {
    display: grid;
    grid-template-columns: 330px 1fr;
    grid-gap: 20px;
}

#content03 #tab05 .eqpt_detail {
    padding: 20px;
    background: #fff;
}
#content03 #tab05 .eqpt_detail dl {
    display: grid;
    grid-template-columns: 70px 1fr;
    place-items: center stretch;
    grid-gap: 10px;
    margin: 20px;
}
#content03 #tab05 .eqpt_detail dl dt {
    display: grid;
    place-content: center;
    height: 70px;
    border-radius: 100px;
    background: #f69932;
    font-size: min(calc(24vw / 768* 100), 12px);
    font-weight: bold;
    color: #fff;
    text-align: center;
}

#content03 #tab06 .notice {
    margin-top: 30px;
    color: var(--clr_main);
    line-height: 1.4;
}
#content03 #tab06 .eqpt_detail {
    padding: 20px;
    background: #fff;
}
#contents #content03 #tab06 .eqpt_detail p + p {
    margin-top: 10px;
}
#contents #content03 #tab06 .eqpt_detail p.notice {
    font-size: min(calc(32vw / 768* 100), 16px);
}
#contents #content03 #tab06 .eqpt_detail:first-of-type ul:has(.indent1s) {
    margin: 10px calc((100% - 290px) / 2) 0;
}

/* eqpt_safety */
.tab ul.eqpt_safety {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 10px 25px;
    margin: 0 20px;
}
.tab ul.eqpt_safety li {
    display: grid;
    grid-template-columns: 128px 1fr;
    grid-gap: 10px;
}
.tab ul.eqpt_safety p strong {
    display: block;
    color: var(--clr_main);
}

/* eqpt_point */
.tab ul.eqpt_point {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 10px 20px;
    margin: 20px 0 0;
}
.tab ul.eqpt_point li {
    display: grid;
    grid-template-columns: 152px 1fr;
    place-content: start start;
    place-items: start stretch;
    grid-gap: 10px;
    margin: 0;
    padding: 0;
}
#contents .tab  ul.eqpt_point h4 {
    grid-area: 1 / 1 / 1 / 3;
    margin: 0;
}

.tab ul.eqpt_point li:has(ul.eqpt_safety) {
    grid-template-columns: 1fr;
}
#contents .tab  ul.eqpt_point li:has(ul.eqpt_safety) h4 {
    grid-area: auto;
}
#contents .tab ul.eqpt_point ul.eqpt_safety {
    grid-template-columns: 1fr;
    grid-gap: 10px;
    margin: 0;
}
.tab ul.eqpt_point ul.eqpt_safety li {
    grid-template-columns: 142px 1fr;
    grid-gap: 5px;
}
.tab ul.eqpt_point ul.eqpt_safety li:after {
    display: block;
    content: "";
    width: 30px;
    height: 15px;
    margin: 5px -18px 0 auto;
    clip-path: polygon(0 0,50% 100%,100% 0);
    background: #c6e5ff;
}
.tab ul.eqpt_point ul.eqpt_safety li:last-of-type:after {
    display: none;
}

/* tab addition */
#content03 .tab_area .acc_area {
    margin: 30px 0 0;
}

#contents .tab_area ul .indent1 {
    margin-top: 5px;
    line-height: 1.6;
}
#contents .tab_area ul .indent1:first-of-type {
    margin-top: 0;
}

/* note_list */
dl.note_list {
    margin: 40px 0 0;
    padding: 20px;
    background: #f5f5f5;
}
dl.note_list dt {
    padding: 0 5px 5px;
    border-bottom: 1px solid #535353;
    font-size: min(calc(25vw / 768* 100), 15px);
    font-weight: bold;
    text-align: center;
}
dl.note_list ul li {
    margin: 6px 0 0;
    font-size: min(calc(24vw / 768* 100), 13px);
    line-height: 1.6;
}
dl.note_list ul li:first-of-type {
    margin-top: 12px;
}

/* tel_area */
.tel_area {
    display: grid;
    grid-template-columns: 1fr 1fr;
    place-items: center stretch;
    grid-gap: 10px;
    margin: 40px 0 0;
    padding: 20px 17px;
    border: 1px solid #bdbdbd;
    color: #000;
}
.tel_area dl dt {
    margin: 0 0 10px;
    font-size: min(calc(32vw / 768* 100), 16px);
    font-weight: bold;
}
.tel_area dl dd {
    font-size: min(calc(24vw / 768* 100), 12px);
}


/* content_close -------------------------------- */
#contents #content_close {
    padding-top: 40px;
    padding-bottom: 100px;
}
#contents #content_close h2 {
    margin-bottom: 40px;
    font-size: min(calc(44vw / 768* 100), 22px);
}
#contents #content_close h2:after {
    display: none;
}
#contents #content_close p.btn_myogtop {
    text-align: center;
}


/* media query -------------------------------- */
@media (min-width: 979px){
    /* accordion -------- */
    .acc_only { display: block!important;  }
}

@media (max-width: 980px){
    /* common -------- */
    #contents section { padding: 4% 0; }
    #contents section .inner { margin: 0 5%; }
    #contents section img { width: 100; }
    #contents section img.wd_re { width: revert-layer; }

    /* entry -------- */
    .entry_area { width: 100%; }
    .entry_area .entry_copy { grid-template-columns: 1fr  85px; }
    .entry_area .entry_copy dl { padding: 10px 5px; }
    .fixed_cta .entry_area { padding: 10px 5% 5px; }
    #contents .fixed_cta { width: 100%; }

    /* accordion -------- */
    .acc_area .acc_list { padding: 4% 4% 0; }
    .acc_short .acc_tit_open:hover,
    .acc_area .acc_close span:hover { opacity: 4; }

    /* tab -------- */
    #contents .tab_area h3 { margin: 0 4% 10px; }
    .tab_area .tab_list {
        grid-auto-rows: minmax(50px, auto);
        padding: 0 3%;
    }
    .tab_area .tab_list li {
        grid-template-rows: subgrid;
        grid-row: span 1;
        padding-bottom: 8px;
    }
    .tab_area .tab_list li span {
        min-height: 38px;
    }
    .tab_area .tab_list li.active {
        margin-top: -4px;
        transform: scaleY(1.005);
    }
    .tab_area .tab_list li.active span {
        margin-bottom: -4px;
        transform: scaleY(0.995);
    }
    .tab_area .tab { padding: 7% 0; 4% }
    .tab_area .tab .tab_inner { padding: 0 4%; }

     /* content_menu -------- */
    #content_menu .anchor_menu {
        grid-template-columns: 1fr 1fr;
        margin: 0 3%;
    }
    #content_menu .anchor_menu li:first-of-type { grid-area: 1 / 1 / 1 / 3; }
    #content_menu .anchor_menu li:first-of-type a {
        padding: 10px 5px;
        background-position: right 15px center;
    }
    #content_menu .anchor_menu li:first-of-type a:after {
        left: inherit;
        right: 20px;
        top: calc(50% - 5px);
    }

    /* swiper */
    .swiper-wrapper { width: 100%; }
    .swiper-wrapper li { height: auto; }
    #contents .swiper-container p + p,
    #contents .swiper-container ul + p { margin-top: calc(-1 * var(--swiper-navigation-size)/ 2); }

    #contents .tab .swiper-pagination { bottom: 40px; }
    .swiper-pagination-bullet-active { background: var(--swiper-pagination-color,var(--clr_main)); }
    #contents .swiper-container .swiper-button-prev,
    #contents .swiper-container .swiper-button-next {
        display: flex;
        left: 0;
        right: auto;
        top: 300px;
        width: 28px;
        height: 46px;
        background: var(--clr_main);
        border-radius: 0 8px 8px 0;
        z-index: 90;
        transform: translate3d(0, 0, 0);
        ::slotted(svg), svg { display: none; }
    }
    #contents .swiper-container .swiper-button-next {
        left: auto;
        right: 0;
        border-radius: 8px 0 0 8px;
    }
    .swiper-container .swiper-button-prev:after,
    .swiper-container .swiper-button-next:after {
        display: block;
        content: "";
        width: 8px;
        height: 14px;
        background: url("../img/ico_arr_swiper.svg") no-repeat left top;
        background-size: cover;
    }
    .swiper-container .swiper-button-prev:after { transform: rotate(180deg); }
    .swiper-button-next.swiper-button-disabled,
    .swiper-button-prev.swiper-button-disabled { opacity: 0; }

    /* content01 -------- */
    /* case_sign */
    dl.case_sign {
        grid-template-columns: 1fr;
        margin: 0 4% 30px;
    }
    dl.case_sign dt { padding: 10px; }
    dl.case_sign dt:after {
        left: calc(50% - 12px);
        top: inherit;
        bottom: -9px;
        width: 25px;
        height: 11px;
        clip-path: polygon(0 0,50% 100%,100% 0);
    }
    dl.case_sign dd {
        grid-template-columns: 1fr 172px;
        padding: 10px 15px;
    }

    /* case_list  */
    dl.case_list { margin: 0 4% 30px; }
    dl.case_list:has(+ dl.case) { margin-bottom: 20px; }
    dl.case_list dd { padding: 0 5% 5%; }
    dl.case_list ul li { grid-template-columns: 1fr; }
    #contents dl.case_list ul h4 { grid-area: auto; }
    dl.case_list .acc_short .acc_open { margin-top: 30px; }

    /* tab_addition */
    .acc_area.open .acc_inner.pc_only { display: block!important; }
    ul.rowlist {
        grid-template-columns: 1fr;
        grid-gap: 20px;
        padding: 4% 6% 0;
    }
    #tab03 .tab_addition {
        grid-template-columns: 1fr;
        grid-gap: 30px;
    }
    .tab_addition strong { text-align: center; }
    #content01 .tab  .tab_addition img {
        width: 50%;
        margin-inline: auto;
    }
    #contents section #tab03 .inner { margin: 0 5%; }

    /* content02 -------- */
    /* check_item */
    .check_item {
        grid-template-columns: 1fr;
        grid-gap: 20px;
    }

    /* pointlist */
    ul.pointlist { grid-template-columns: repeat(3, 100px); }
    ul.pointlist li { height: 100px; }

    /* content03 -------- */
    #content03 .tab p:has(+ .eqpt_detail) { margin: 0 4%; }
    #content03 .tab_area .tab_list li.active { transform: scaleY(1.005); }

    /* equipment_list */
    ul.eqpt_list li {
        width: calc(100% - 8%);
        margin: 0;
        padding: 20px 5% 40px;
    }

    /* equipment_data */
    ul.eqpt_list .eqpt_data {
        grid-template-columns: 1fr;
        grid-gap: 20px;
    }
    #contents ul.eqpt_list .eqpt_data p.eqpt_note { grid-area: auto; }

    /* eqpt_detail */
    #content03 .tab .eqpt_detail { margin: 20px 4% 30px; }
    #content03 #tab04 .eqpt_detail { grid-template-columns: 1fr; }
    #content03 #tab05 .eqpt_detail { padding: 20px 4%; }
    #content03 #tab05 .eqpt_detail dl { margin: 10px 0; }
    #content03 #tab06 .eqpt_detail { padding: 20px 4%; }
    #contents #content03 #tab06 .eqpt_detail:first-of-type ul:has(.indent1s) { margin: 10px 0 0; }
    .tab ul.eqpt_safety {
        grid-gap: 10px 10px;
        margin: 0;
    }
    .tab ul.eqpt_safety li { grid-template-columns: 1fr; }
    .tab ul.eqpt_safety p strong { text-align: center; }
    .tab ul.eqpt_point { grid-template-columns: 1fr; }
    .tab ul.eqpt_point li { width: auto; }
    .tab ul.eqpt_point ul.eqpt_safety li {
        grid-template-columns: 1fr 1fr;
        grid-gap: 5px 10px;
    }
    .tab ul.eqpt_point ul.eqpt_safety p strong { text-align: left; }

    /* note_list, tel_area */
    dl.note_list {
        margin: 25px 0 0;
        padding: 3%;
    }
    .tel_area {
        margin: 30px 0 0;
        grid-template-columns: 1fr;
    }
    .tel_area dl dt { text-align: center; }

    /* content_close -------- */
    #contents #content_close { 
        padding-top: 8%;
        padding-bottom: 8%;
    }
    #contents #content_close p.btn_myogtop a {
        display: block;
		padding: 13px 0;
		border: 1px solid #cecece;
		background-color: #f0f0f0;
		font-size: min(calc(24vw / 768* 100), 12px);
		color: #0066c5;
		text-decoration: none;
    }
    #contents #content_close p.btn_myogtop a img {
        width: 12px;
        height: 14px;
		margin-left: 10px;
		vertical-align: middle;
    }
}