@charset "UTF-8";
/*      ブレイクポイント:767/399/359px     */
/*      読み込むファイル
                    begin.css
          *this*    sp_surface.css
                    jquery.rwdImageMaps.min.js
                    shop_list.js
*/
/* ================  ================ */

:root {
  --brand-color-dg: #006943;
  --brand-color-lg: #8fc31f;
  --bg-color-lmint: #f4f8e9
}

#content_block {
    max-width: 1080px;
}

.sp_vaio {
    width: 100%;
    margin: 0;
    color: #484848;
}
.sp_vaio * {
    line-height: 1.666;
    transition: all 75ms ease-in-out;
}
.sp_vaio h1,
.sp_vaio h2,
.sp_vaio h3,
.sp_vaio h4 {
    margin: 0;
    padding: 0;
    border: 0 none;
    border-radius: 0;
    background-color: transparent;
    color: #484848;
    font-weight: normal;
    line-height: 1.5em;
    font-weight: bold;
}
.sp_vaio ol,
.sp_vaio ul,
.sp_vaio dl,
.sp_vaio p {
    margin: 0;
    padding: 0;
    color: #484848;
    font-size: 1rem;
}
.sp_vaio  a,
.sp_vaio  a:link,
.sp_vaio  a:visited {
    color: #484848;
    text-decoration: none;
}
.sp_vaio a.link_grn,
.sp_vaio a.offsitelink,
.sp_vaio a.offsitelink:link,
.sp_vaio a.offsitelink:visited {
    color: #006943;
    text-decoration: underline;
}
.sp_vaio img {
    max-width: 100%;
    vertical-align: bottom;
}
.sp_vaio small {
    font-size: 100%;
}
ul.li_icon_fa {
    margin: 0;
    padding: 0;
    list-style: none;
}
ul.li_icon_fa li {
    position: relative;
    padding-left: 1.5rem;
}
ul.li_icon_fa li::before {
    position: absolute;
    top: 0;
    left: 0;
    font-family: FontAwesome;
}
ul.li_icon_fa_f046 li::before {
    content: '\f046';
    top: 3px;
}

/* ======== page_head ======== */
.sp_vaio .page_head {
    max-width: 950px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 1em;
    text-align: center;
    font-size: 1rem;
}
.sp_vaio .page_head h1 {
    margin-top: 1.5rem;
    line-height: 1.2;
    font-weight: bold;
    font-size: 3.5625em;
    color: #008cd6;
}
.sp_vaio .page_head h1 small {
    font-size: 85%;
    vertical-align: 5px;
    line-height: 1px;
}
/* ======== sec ======== */
.sp_vaio .sec00 {
    max-width: 950px;
    margin: 1.5em auto 5em;
}
.sp_vaio .sec01 {
    max-width: 950px;
    margin: 4em auto 5em;
}
.sp_vaio .sec_faq {
    max-width: 950px;
    margin: 3em auto;
}

/* ======== sec_head ======== */
.sp_vaio .sec_head_wrapp {
    width: 100%;
    margin: 2.5rem 0 1.5rem;
    padding: .5rem 0;
    background-color: #006943;
}
.sp_vaio .sec_head_wrapp .sec_head {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 1.25em 0;
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    background-color: #006943;
    color: #fff;
    font-size: 1.625em;
    line-height: 2;
    text-align: center;
}
.sp_vaio .sec_head_wrapp .sec_head h2 {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    background-color: #006943;
    line-height: 1.375;
    font-size: 1.375rem;
    font-weight: bold;
    color: #fff;
}

/* ======== sec_content ======== */
.sp_vaio .sec_content {
    width: auto;
    margin-right: 40px;
    margin-left: 40px;
}

/* ======== Grid and Flex ======== */
.sp_vaio .grid2cells {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.sp_vaio .grid3cells {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.flexboxcenter {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-content: center;
}


/* ==== CTAブロック ==== */
.sp_vaio .contact_action {
    width: 90%;
    margin: 3rem auto 2rem;
    text-align: center;
}
.sp_vaio .features .contact_action {
    width: 100%;
    margin: 2rem auto 2rem;
}
.sp_vaio .contact_action .sec_content {
    /*  */
    margin-right: auto;
    margin-left: auto;
}

.sp_vaio .contact_action_head {
    font-size: 1.5rem;
    font-weight: bold;
}
.sp_vaio .contact_action ul {
    display: flex;
    margin: 0 auto;
    padding: 0;
    flex-wrap: wrap;
    align-items: center;
    /* justify-content: space-around; */
    justify-content: center;
}
.sp_vaio .contact_action ul li {
    list-style: none;
    margin: 0 1rem;
    padding: 0;
    text-align: center;
}
.sp_vaio .contact_action ul li a {
    display: inline-block;
    width: 12em;
    margin-top: 1.25rem;
    padding: 0 1rem;
    border: 1px solid #006943;
    border-radius: 1.40625rem;
    background-color: #f29600;
    line-height: 2.125;
    color: #fff;
    font-size: 1.325rem;
    text-align: center;
    text-decoration: none;
}
.sp_vaio .contact_action ul li a:hover {
    background-color: #f29600;
    text-decoration: underline;
}

/* ======== 修理サービスメニュー ======== */
.sp_vaio ul.surfacerepairmenulist {
    display: grid;
    max-width: 730px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: auto;
    grid-gap: 1rem;
}
.sp_vaio ul.surfacerepairmenulist li {
    display: block;
    margin: 0;
    padding: 8px 6px;
    border: 2px solid #d0d0d0;
    border-radius: 8px;
    background-color: #fafafa;
}
.sp_vaio ul.surfacerepairmenulist li.nolink {
    grid-column-start: 1;
    grid-column-end: 3;
    background-color: #ffffe8;
}
.sp_vaio .surfacerepairmenulist .repairmenulistitem {
    display: grid;
    grid-template-columns: 4fr 3fr;
}
.sp_vaio .surfacerepairmenulist .nolink .repairmenulistitem {
    display: block;
}
.sp_vaio .surfacerepairmenulist .repairmenulist_img {
    margin-top: 1.25rem;
    margin-right: 1.5rem;
}
.sp_vaio .surfacerepairmenulist .repairmenulist_txt {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}
.sp_vaio .surfacerepairmenulist .repairmenulist_head {
    margin-bottom: 1rem;
    padding-bottom: .125rem;
    border-bottom: 3px solid #006943;
    font-size: 1rem;
}
.sp_vaio .surfacerepairmenulist .repairmenulist_exp {
    font-size: .75rem;
    text-align: left;
}
.sp_vaio .surfacerepairmenulist .repairmenulist_exp a {
    color: #006943;
    text-decoration: underline;
}
@media screen and (max-width: 767px) {
    .sp_vaio ul.surfacerepairmenulist {
        display: block;
        max-width: calc(100% - 25px);
    }
    .sp_vaio ul.surfacerepairmenulist li {
        margin-bottom: 2rem;
    }
    .sp_vaio .surfacerepairmenulist .repairmenulist_img {
        margin-right: 1.25rem;
    }
}

/* ======== VAIOシリーズ ======== */
.sp_vaio .vaioseries_para {
    margin: 2rem 0;
    text-align: center;
    font-size: 1.25rem;
    font-weight: bold;
    color: red;
}
.sp_vaio .grid3cells.vaioseries_flex {
    grid-gap: 16px;
    margin-top: 1rem;
    margin-bottom: 2rem;
}
.sp_vaio .vaioseries_img {
    padding: 6px;
    border: 2px solid #006943;
    border-bottom-width: 1px;
    text-align: center;
}
.sp_vaio .vaioseries_item .vaioseries_name {
    border: 2px solid #006943;
    border-width: 0 2px 1px;
    padding: 6px 0;
    text-align: center;
    font-weight: bold;
}
.sp_vaio .vaioseries_item .acds {
    border: 2px solid #006943;
    border-width: 0 2px 1px;
}
.sp_vaio .vaioseries_item .acds:last-of-type {
    border-bottom-width: 2px;
}
.sp_vaio .vaioseries_item .acds .acd_name {
    background-color: #f4f8e9;
}
.sp_vaio .vaioseries_item .acds .acd_name::before {
    display: none;
    width: 0;
    height: 0;
    margin-right: 0;
    content: none;
}
.sp_vaio .vaioseries_item .acds .acd_chk:checked + .acd_name::before {
    content: none;
}
.sp_vaio .vaioseries_item .acds .acd_name::after {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-top: 0;
    margin-left: 6px;
    vertical-align: top;
    font-family: FontAwesome;
    content: "\f067";
    font-size: 1rem;
    font-weight: 200;
}
.sp_vaio .vaioseries_item .acds .acd_chk:checked + .acd_name::after {
    content: "\f068";
}
.sp_vaio .vaioseries_item .acds .acd_name .acd_head {
    color: #484848;
    text-align: left;
}
.sp_vaio .vaioseries_item .acds .acd_name .acd_head {
    width: calc(100% - 30px);
    font-size: 1rem;
    font-weight: normal;
}
.sp_vaio .vaioseries_item .acds .acd_name .acd_head small {
    line-height: 1.25;
    font-size: .75rem;
}
.sp_vaio .vaioseries_item .acd_chk + .acd_name + .acd_content {
    background-color: #fff;
    padding: 0 1rem;
}
.sp_vaio .vaioseries_item .acd_chk:checked + .acd_name + .acd_content {
    max-height: 600px;
    padding: .5rem 1rem;
    border-top: 1px solid #006943;
}
.sp_vaio .vaioseries_item .acds .acd_content p {
    font-size: .875rem;
}
.sp_vaio .vaioseries_note {
    margin-top: 2rem;
    margin-bottom: 0;
    text-align: center;
    font-size: 1.25;
}
.sp_vaio .vaioseries_note_small {
    margin-right: 60px;
    text-align: right;
    font-size: .875rem;
}
@media screen and (max-width: 767px) {
    .sp_vaio .grid3cells.vaioseries_flex {
        display: block;
    }
    .sp_vaio .vaioseries_item {
        margin-bottom: .75rem;
    }
}
@media (max-width: 479px) {
    .sp_vaio .vaioseries_note_small {
        margin-right: 0;
    }
}

/* ==== FAQ ==== */
.sp_vaio .faq .acds .acd_content p small {
    font-size: .875rem;
}


/* ==== page description ==== */
.sp_vaio .page_description {
    width: min(720px, 92%);
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 1.5rem;
}

/* ==== feature ==== */
.sp_vaio .feature_index_wrap {
    width: 86%;
    margin: 3rem auto .75rem;
    padding: 1rem 3%;
    border: 1px solid #e8dfdf;
    border-radius: 10px;
    background-color: #f8f8f8;
}
.sp_vaio.vaiotop .feature_index_wrap {
    margin-bottom: 4rem;
}
.sp_vaio ul.feature_index {
    margin: 1.5rem auto 1.5rem 12%;
}
.sp_vaio ul.feature_index li {
    margin-bottom: .75rem;
    font-size: 1.25rem;
}
.sp_vaio ul.feature_index li a,
.sp_vaio ul.feature_index li a:link,
.sp_vaio ul.feature_index li a:visited {
    color: #006943;
    text-decoration: underline;
}
.sp_vaio .feature_index_wrap + .contact_action {
    margin-top: .5rem;
}
.sp_vaio .feature .feature_head,
.sp_vaio .ssd_price_tables > h3 {
    margin-top: 2.5rem;
    margin-bottom: 1rem;
    padding: .125rem 1rem;
    background-color: #8fc31f;
    color: #2f2f2f;
    font-size: 1.125rem;
    text-align: left;
}
.sp_vaio .feature .feature_txt {
    margin-bottom: 2rem;
}
.sp_vaio .feature .feature_repaircase_wrapper {
    padding: 8px; 6px;
    border: 2px solid #3f3f3f;
}
.sp_vaio .feature .feature_repaircase {
    display: grid;
    grid-template-columns: 3fr 5fr;
}
.sp_vaio .feature_repaircase .feature_repaircase_img {
    margin-right: 2rem;
}
.sp_vaio .feature_repaircase .feature_repaircase_head {
    margin-bottom: 1rem;
    padding-bottom: .125rem;
    border-bottom: 5px solid #006943;
    font-size: 1rem;
    text-align: left;
}
.sp_vaio .feature_repaircase .feature_repaircase_exp {
    font-size: 1rem;
}
.sp_vaio .feature .feature_repaircase_note1 {
    text-align: right;
    color: red;
}
.sp_vaio .feature .feature_repaircase_note2 {
    margin-top: 1rem;
    text-align: right;
    font-size: .875rem;
}
.sp_vaio .feature_repaircase .feature_repaircase_head {
    margin-bottom: 1rem;
    padding-bottom: .125rem;
    border-bottom: 4px solid #006943;
    font-size: 1.125rem;
    text-align: left;
    font-weight: bold;
}

/* ==== 料金 ==== */
.sp_vaio .price_structure {
    padding: 1rem;
    border: 1px solid #333;
    border-radius: 20px;
    background-color: #f4f8e9;
}
.sp_vaio .price_structure_head {
    font-size: 1.5rem;
    text-align: center;
    font-weight: bold;
}
.sp_vaio .price_structure_grid {
    display: grid;
    margin-right: auto;
    margin-left: auto;
    grid-gap: 10px;
    grid-template-columns: 120px 80px 1fr 80px 120px;
    grid-template-rows: 47px 47px 47px;
}
.sp_vaio.vaiop5 .price_structure_grid,
.sp_vaio.vaiop6 .price_structure_grid {
    grid-gap: 8px;
    grid-template-columns: 120px 56px 1fr 56px 1fr 56px 120px;
    grid-template-rows: 47px 47px 47px;
}

.sp_vaio .price_structure_c1,
.sp_vaio .price_structure_c2,
.sp_vaio .price_structure_c4,
.sp_vaio .price_structure_c5,
.sp_vaio.vaiop5 .price_structure_c3-2,
.sp_vaio.vaiop6 .price_structure_c3-2 {
    grid-row-start: 2;
    grid-row-end: 3;
    text-align: center
}
.sp_vaio .price_structure_c3,
.sp_vaio.vaiop5 .price_structure_c3-1,
.sp_vaio.vaiop5 .price_structure_c3-3,
.sp_vaio.vaiop6 .price_structure_c3-1,
.sp_vaio.vaiop6 .price_structure_c3-3 {
    grid-row-start: 1;
    grid-row-end: 4;
    margin: 1rem 0;
    padding: 12px 6px;
    border: 1px solid #333;
    border-radius: 10px;
    background-color: #fff;
    text-align: center
}
.sp_vaio.vaiop5 .price_structure_c3-1,
.sp_vaio.vaiop5 .price_structure_c3-3,
.sp_vaio.vaiop6 .price_structure_c3-1,
.sp_vaio.vaiop6 .price_structure_c3-3 {
    margin: .75rem 0;
}
.sp_vaio .price_structure strong {
    line-height: 1.2;
}
.sp_vaio.vaiop5 .price_structure strong,
.sp_vaio.vaiop6 .price_structure strong {
    line-height: 1;
}
.sp_vaio.vaiop5 .price_structure .fs_150,
.sp_vaio.vaiop6 .price_structure .fs_150 {
    font-size: 1.25rem;
}
.sp_vaio.vaiop5 .price_structure .fs_200,
.sp_vaio.vaiop6 .price_structure .fs_200 {
    font-size: 1.5rem;
}
.sp_vaio .price_structure small {
    font-size: .875rem;
}
.sp_vaio.vaiop5 .price_structure_smallnote,
.sp_vaio.vaiop6 .price_structure_smallnote {
    line-height: .75rem;
    font-size: .75rem;
}
.sp_vaio .price_structure_c1,
.sp_vaio .price_structure_c5 {
    font-size: 1.25rem;
    padding-top: 4px;
    border: 2px dashed #aaa;
    border-radius: 10px;
    background-color: #fff;
    color: #999;
}
.sp_vaio .price_structure_c2,
.sp_vaio .price_structure_c4 {
    opacity: 0.8;
}
@media screen and (max-width: 860px) {
    .sp_vaio .price_structure_grid {
        grid-template-rows: 67px 47px 67px;
    }
    .sp_vaio.vaiop5 .price_structure_grid,
    .sp_vaio.vaiop6 .price_structure_grid {
        grid-template-rows: 80px 47px 80px;
    }
}
@media screen and (max-width: 767px) {
    .sp_vaio .price_structure_grid {
        display: block;
        margin-top: 1.5rem;
        margin-bottom: 1rem;
    }
    .sp_vaio .price_structure_c1,
    .sp_vaio .price_structure_c5 {
        width: 160px;
        margin: 0 auto;
        padding: 3px 0;
    }
    .sp_vaio .price_structure_c2 {
        padding-top: 14px;
    }
    .sp_vaio .price_structure_c4 {
        padding-bottom: 14px;
    }
}

.sp_vaio .price_feature {
    margin: 1.5rem auto;
}
.sp_vaio .price_feature ol {
    counter-reset: my-counter;
    margin: 1.25rem 0 0;
    padding: 0;
    list-style: none;
}
.sp_vaio .price_feature ol li {
    position: relative;
    margin-bottom: .5rem;
    padding-left: 1.5em;
    line-height: 1.5;
    font-size: 1.25rem;
}
.sp_vaio .price_feature ol li:before {
    content: counter(my-counter);
    counter-increment: my-counter;
    position: absolute;
    top: 5px;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    width: 1.25rem;
    height: 1.25rem;
    border: 1px solid #484848;
    border-radius: 50%;
    line-height: 1.2;
    background-color: #fff;
    color: #484848;
    font-size: 75%;
}

.sp_vaio .price_tables {
    grid-gap: 20px;
}
.sp_vaio .price_table {
    border: 1px solid #999;
}
.sp_vaio .price_table > p {
    padding-left: 8px;
    border-bottom: 1px solid #999;
    background-color: #f4f8e9;
    font-weight: bold;
}
.sp_vaio .price_table > p > small {
    font-size: .75rem;
}
.sp_vaio .price_table > table {
    width: calc(100% - 16px);
    margin: 0 auto;
}
.sp_vaio .price_table tbody tr:nth-child(3) {
    border-bottom: 2px solid #ccc;
}
.sp_vaio .price_table tr td {
    font-size: .875rem;
}
.sp_vaio .price_table tr td:first-child {
    padding-left: .25em;
}
.sp_vaio .price_table tr td:last-child {
    width: 74px;
    text-align: right;
    padding-right: .25em;
}
.sp_vaio .price_table tbody tr:last-child td {
    font-weight: bold;
}
.sp_vaio .price_table tr td.confirmed_fee {
    padding-right: 1.25em;
}
.sp_vaio .price_description p {
    margin-top: 2rem;
    /* font-size: .875rem; */
}
.sp_vaio .price_description p small {
    font-size: .875rem;
}
.sp_vaio .ssd_price_tables {
}
.sp_vaio .ssd_price_tables > p {
    text-align: center;
}

.sp_vaio .ssd_price_table > table {
    table-layout: fixed;
    width: calc(100% - 40px);
    margin: 1rem auto 0;
    border: 1px solid #999;
    border-collapse:collapse;
}
.sp_vaio .ssd_price_table tr th,
.sp_vaio .ssd_price_table tr td {
    font-size: 1rem;
    padding: .5rem 1rem;
    border: 1px solid #999;
    font-weight: normal;
    text-align: left;
}
.sp_vaio .ssd_price_table tr:first-child {
    background-color: #f4f8e9;
}
.sp_vaio .ssd_price_table tr th:first-child {
    width: 165px;
}
.sp_vaio .ssd_price_table tr th:nth-child(2) {
    width: 80px;
}
.sp_vaio .ssd_price_table tr td:nth-child(2) {
    padding-right: 1.5em;
    text-align: right;
}
.sp_vaio .ssd_price_table tr td.notconfirmed_fee {
    padding-right: .5em;
}
@media screen and (max-width: 767px) {
    .sp_vaio .price_tables {
        display: block;
    }
    .sp_vaio .price_table {
        margin-bottom: .5rem;
    }
    .sp_vaio .price_table tr td:first-child {
        padding-left: 2.5em;
    }
    .sp_vaio .price_table tr td:last-child {
        padding-right: 2.5em;
    }
    .sp_vaio .price_table tr td.confirmed_fee {
        padding-right: 3.5em;
    }

    .sp_vaio .ssd_price_table > table {
        width: calc(100% - 20px);
    }
    .sp_vaio .ssd_price_table tr th,
    .sp_vaio .ssd_price_table tr td {
        font-size: .875rem;
        padding: .5rem;
    }
    .sp_vaio .ssd_price_table tr th:first-child {
        width: 88px;
    }
    .sp_vaio .ssd_price_table tr th:nth-child(2) {
        width: 70px;
    }
    .sp_vaio .ssd_price_table tr td:nth-child(2) {
        padding-right: 1.5em;
    }
    .sp_vaio .ssd_price_table tr td.notconfirmed_fee {
        padding-right: .5em;
    }
}

@media (max-width: 479px) {
    .sp_vaio .price_feature ol li {
        font-size: 1rem;
    }
    .sp_vaio .price_feature ol li:before {
        top: 4px;
        width: 1rem;
        height: 1rem;
    }
    .sp_vaio .price_table > table {
        width: calc(100% - 12px);
        margin: 0 6px;
    }

}


/* ==== 持込修理/宅配修理をお選びください ==== */
.sp_vaio .briordeli .briordeli_note {
    text-align: right;
    font-size: .875rem;
}
/* ==== 修理の流れ ==== */
.sp_vaio .service_flow .flow_nm_ttl {
    text-align: left;
}
.sp_vaio .section_flow .align_center h3 {
    display: inline-block;
    width: auto;
    margin: 2rem 0 8px;
    padding: 0 1.5em 3px;
    border-bottom: 1px solid #666;
    font-size: 1.5rem;
    font-weight: bold;
}
.sp_vaio .service_flow p {
    line-height: 1.75;
}
.sp_vaio .tabs .tab_label p {
    line-height: 1;
}
.sp_vaio .section_flow a {
    color: #007d00;
    text-decoration: underline;
}
.sp_vaio .section_flow a.link-tel-num {
    text-decoration: none;
}




/* ==== repair-case-study ==== */
.sp_vaio .repaircasestudy {
    display: grid;
    margin-right: auto;
    margin-left: auto;
    grid-gap: 20px;
    /* grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); */
}
.sp_vaio .repaircasestudy p {
    texst-align: center;
}

/* ==== case same day ==== */
.sp_vaio .casesameday_note {
    margin-top: 1rem;
    margin-bottom: 2rem;
    text-align: right;
    font-size: .875rem;
}
.sp_vaio .casesameday {
    margin: 1rem 2rem 1rem 3rem;
    grid-template-columns: 40% 60%;
}
.sp_vaio .casesameday_img {
    margin-right: 2rem;
    margin-bottom: 1rem;
}
.sp_vaio .casesameday_txt {
    margin-left: 2rem;
}
.sp_vaio .casesameday_txt p {
    font-size: 1rem;
}
.sp_vaio .casesameday .casesameday_head {
    margin-bottom: .25rem;
    padding-bottom: .125rem;
    border-bottom: 4px solid red;
    color: red;
    font-size: 1.125rem;
    font-weight: bold;
}
.sp_vaio .casesameday_help {
    margin-top: 2rem;
}
.sp_vaio .casesameday_help_head {
    margin-bottom: 1rem;
    padding-bottom: .125rem;
    border-bottom: 5px solid #006943;
    font-size: 1rem;
    text-align: left;
}
.sp_vaio .casesameday_help p {
    margin-bottom: 2rem;
}


@media screen and (max-width: 767px) {
    dd {
        margin-left: 20px;
    }
    .sp_vaio {
        max-width: 480px;
        margin: 0 auto;
    }

    .sp_vaio .page_head h1 {
        line-height: 1.1;
        font-size: 2.3125em;
    }
    .sp_vaio .sec_content {
        margin-right: 10px;
        margin-left: 10px;
    }

    .sp_vaio .casesameday_img {
        margin-right: .75rem;
    }
    .sp_vaio .casesameday_txt {
        margin-bottom: 1rem;
        margin-left: .75rem;
    }
    .sp_vaio .feature_index_wrap {
        width: 90%;
        margin: 3rem auto 1.25rem;
        padding: 1rem 4%;
    }
    .sp_vaio ul.feature_index {
        margin: 1.5rem 1rem;
    }
    .sp_vaio ul.feature_index li {
        font-size: 1.125rem;
    }
    .sp_vaio .feature_repaircase .feature_repaircase_img {
        margin-right: 1.25rem;
    }
    .sp_vaio .contact_action {
        width: 95%;
        margin-top: 3rem;
    }
    .sp_vaio .contact_action ul li {
        margin: 0;
    }
    .sp_vaio .contact_action ul li a {
        margin-top: 1.5rem;
        font-size: 1.25rem;
    }
    .sp_vaio .contact_action ul li:first-child a {
        margin-top: 1rem;
    }

    /* ==== sec00 ==== */
    .sp_vaio .sec00 {
        width: 96%;
        padding-right: 2%;
        padding-left: 2%;
    }

    /* ==== sec01 ==== */
    .sp_vaio .sec01 {
        width: 96%;
        padding-right: 2%;
        padding-left: 2%;
    }
    .sp_vaio .sec01 .sec_head {
        margin-bottom: 10px;
        font-size: 1.4375em;
    }

    .sp_vaio .casesameday {
        margin: 1rem;
        grid-template-columns: 35% 65%;
    }
    /* ==== sec_faq ==== */
    .sp_vaio .sec_faq {
        width: 96%;
        padding-right: 2%;
        padding-left: 2%;
    }
}
@media (max-width: 479px) {
    .sp_vaio .casesameday {
        margin: 1rem .5rem;
        grid-template-columns: 30% 70%;
    }
}

@media screen and (max-width: 399px) {
    .sp_vaio .page_header {
        padding-top: 3em;
    }
}
@media screen and (max-width: 359px) {
    .sp_vaio .page_header {
        padding-top: 2.25em;
    }
}

/* ======== VAIO blog ======== */

.sp_vaio .vaio_blog ul.each_maker_post {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 20px;
}
.sp_vaio .vaio_blog ul.each_maker_post li.maker_post_item {
    display: block;
    width: 100%;
    margin-bottom: 1rem;
}
.sp_vaio .vaio_blog li.maker_post_item .maker_post_image {
    background-color: #f4f8f4;
}
.sp_vaio .vaio_blog li.maker_post_item .maker_post_image a {
    display: inline-block;
    aspect-ratio: 4 / 3;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sp_vaio .vaio_blog li.maker_post_item .maker_post_meta {
    display: block;
    margin-bottom: 2px;
    line-height: 1.5;
    font-size: .875rem;
}
.sp_vaio .vaio_blog li.maker_post_item .maker_post_title {
    display: inline-block;
    line-height: 1.5;
    font-size: 1.0625rem;
}
.sp_vaio .vaio_blog li.maker_post_item .maker_post_title a {
    color: #484848;
    text-decoration: underline;
}
@media screen and (max-width: 767px) {
    .sp_vaio .vaio_blog ul.each_maker_post {
        grid-template-columns: repeat(2, 1fr);
    }
}
