/* ===========================
   sp_style.css
   スマホ専用スタイル（～767px）
   =========================== */

/* common */
body {
    line-height: 1.6;
    word-break: break-word;
}

.section {
    padding: 20px 15px;
}

img {
    width: 100%;
}

.pc_only { display: none !important; }
.sp_only { display: block !important; }
.pc-img { display: none !important; }
.sp-img { display: unset !important; }

table {  /* テーブルは横スクロール対応 */
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* commmon_title */
h1 {
    font-size: 25px;
}
.section-title h2 {
    font-size: 19px;
}
.section-title img {
    width: 22px;
}
h5 {
    font-size: 21px;
}
h6.guide-item_h6 {
    text-align: center;
}
h6.guide-item_num {
    display: grid;
    grid-template-columns: auto 1fr;
    padding-left: 5px;
    font-size: 18px;
    letter-spacing: -0.1px;
    font-weight: bold;
    margin-bottom: 0;
}

h6.guide-item_num .txt{
    display: inline-block;
    font-size: 18px;
    letter-spacing: -0.5px;
    font-weight: bold;
}

/* commmon_ボタンリンク */
.btn {
    width: 100%;
    max-width: 320px;
    font-size: 14px;
    padding: 1.1em 2em;
}
.btn_blank::after{
    top: calc(50% - 7px);
    right: 1em;
}

/* common_topボタン */
#btn-top {
    display: block;
    width: 55px;
    height: 55px;
    background: url(../img/common/PageTop.png) no-repeat center;
    background-size: contain;
    position: fixed;
    bottom: 35px;
    right: 12px;
    cursor: pointer;
    z-index: 2;
}
/* common_挨拶する女性 */
.guide-content {
    column-gap: 0.5em;
}
.header-img{
    width: 70px;
}
.section:not(.caution_section) .guide-content p{
    padding: 5px;
    font-size: 14px;
}
.section:not(.caution_section) .guide-content p::after{
    margin-top: -15px;
}
.section:not(.caution_section) .guide-content span{
    font-weight: bold;
    color: var(--jcom-red);
}

/* before_section */
.before_section .guide-item {
    padding: 10px;
}

#mobile .item_02 .guide-item .img {
    width: 100%;
    max-width: 400px;
}

#denki h6 {
    margin-bottom: 10px;
}
#denki p {
    font-size: 16px;
}

/* flow_section */
.flow_section > .guide-content p {
    font-size: 18px !important;
}

.step-container {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.step-content{
    display: block;
    width: 100%;
}
.step-content::after {
    bottom: -35px;
    left: calc(50% - 0px);
    transform: rotate(0);
    translate: -50% -50%;
}
.step-content .step-item > div{
    flex-direction: column;
}
.step-content .step-item .img{
    width: 120px;
    max-width: fit-content;
    margin: 10px auto;
    margin-right: auto;
}

/* caution_section */
.caution_section{
    padding: 0;
    padding-bottom: 30px;
}
.caution_section .bg-gray {
    padding: 30px 20px;
}
.caution_section > :not(.bg-gray) {
    max-width: 320px;
    margin: 0 auto;
}

.caution_section .item_01 .accordion-content {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr 1fr 1fr;
}
.caution_section .item_01 .service_notes{
    display: block;
    padding: 10px 0;
}
.caution_section .item_01 .service_notes:nth-child(n+3)::before {
    content: none;
}
.caution_section .item_01 .service_notes:nth-of-type(odd)::after {
    content: none;
}
.caution_section .item_01 .accordion-content .service_notes:last-of-type::after {
    content: none !important;
}
.caution_section .item_01 .service_notes::after {
    content: "" !important;
    display: block;
    width: 95% !important;
    height: 3px !important;
    border-bottom: 3px dotted #aaa;
    position: absolute;
    top: unset !important;
    right: unset !important;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}
.caution_section .item_01 .service_name{
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    margin: 10px auto;
}
.caution_section .item_01 .service_name img{
    width: 50px;
}
.caution_section .item_01 .service_txt{
    padding-left: 1.5em;
    list-style: disc;
}

.caution_section .item_02 .notes_content {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr auto;
}
.caution_section .item_02 .notes_content .notes_item {
    padding-bottom: 10px;
}

.caution_section > .s {
    text-align: center;
}

/* query_section */

