/*
theme Name: car-shop-saito
Author: 斉藤自動車工業
Description: original theme
version: 1.0.0
*/



html {
    font-size: 16px;
    -webkit-text-size-adjust: 100%;
}

[id] {
    scroll-margin-top: 0;
}

@media (min-width: 768px) {
    [id] {
        scroll-margin-top: 0;
    }
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

.service-detail-section img,
.service-intro-image img {
    height: auto;
    aspect-ratio: attr(width) / attr(height);
}

:root {
    --color-main: #333;
    --font-main: "Noto Sans JP", sans-serif;
}

body {
    font-family: var(--font-main);
    line-height: 1.8;
    color: var(--color-main);
    font-weight: 500;
}

.container {
    max-width: 100%;
    margin: 0 auto;
    overflow: hidden;
}

a:hover {
    opacity: .7;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

@media (max-width: 768px) {
    .main-nav {
        position: fixed;
        inset: 0;
        background: rgba(255, 255, 255, 0.95);
        -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        transform: translateX(-100%);
        -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .main-nav.is-active {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    .nav-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        padding: 2rem;
    }
}


.pc_block {
    display: block;
}

.sp_block {
    display: none !important;
}

br.sp_block,
.sp_inlineblock {
    display: none !important;
}

.pc_inlineblock {
    display: inline-block;
}

p.center {
    text-align: center;
}

.flex-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flex-wrap.sb {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

/*---------------------------------------------------------
アニメーション
---------------------------------------------------------*/

.js-animation {
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
    -webkit-transition: all 2s;
    -o-transition: all 2s;
    transition: all 2s;
}

.js-animation.is-show {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
}

/*---------------------------------------------------------
ヘッダー
---------------------------------------------------------*/

header {
    height: 12vh;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    width: 100%;
    background-image: -o-linear-gradient(3deg, #30429b, #00a7ff);
    background-image: linear-gradient(87deg, #30429b, #00a7ff);
}

.site-title-wrap {
    width: 30%;
    height: 12vh;
    padding-left: 1.5%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.site-title-wrap a {
    height: 12vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.site-title-wrap img {
    width: 87%;
    height: auto;
}

.header-inner {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

nav#g-nav {
    width: 70%;
}

header #nav {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

header #nav-list {
    width: 100%;
}

header nav ul {
    width: 100%;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 12vh;
}

header .nav-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-right: 19%;
}

header nav ul li {
    width: 14.8%;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
}

header nav ul li a {
    display: block;
    text-decoration: none;
    font-weight: 500;
    font-size: 1.15rem;
    letter-spacing: .2vw;
    color: #fff;
    line-height: 1.7;
    text-transform: uppercase;
}

header nav ul li a span.jp {
    display: block;
    font-size: .7em;
}

header li.nav-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

header nav ul li.company a {
    margin-right: 1vw;
}


header nav ul li.tel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-right: 1%;
    width: 26%;
}

header nav ul li.tel a {
    line-height: 1.2;
}

header nav ul li.tel a span.number {
    font-family: "Roboto", sans-serif;
    font-size: 2.3rem;
    text-decoration: none;
    font-weight: 700;
    color: #fff;
    letter-spacing: 0;
}

header nav ul li.tel a::before {
    margin-right: .5vw;
    content: "";
    display: inline-block;
    width: 1.8vw;
    height: 1.8vw;
    background: url(https://car-shop-saito.com/wp-content/uploads/2025/04/tel-blue-circle1.svg) no-repeat center;
    background-size: contain;
    top: .1vw;
    position: relative;
}

header nav ul li.tel a span.time {
    font-size: .9rem;
    letter-spacing: .1vw;
}




div#side_btn a {
    position: fixed;
    right: 0;
    top: 43%;
    width: 4%;
    padding: 2vh .5vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    color: #fff;
    text-decoration: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    line-height: 1;
    border-radius: 0.5em 0 0 0.5em;
    z-index: 9;
    background: #00cb00;
}

div#side_btn a.line .text {
    top: -0.3em;
    position: relative;
}


div#side_btn a.line img {
    width: 66%;
    margin: .5vh auto 1.5vh;
}

div#side_btn a .text {
    width: 100%;
}

div#side_btn a .text span {
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
}

div#side_btn a.line span {
    padding: 0;
    font-family: 'Roboto', sans-serif;
    font-weight: 700;
    letter-spacing: -.2vw;
    line-height: 1;
    font-size: 2rem;
}


div#side_btn a:hover {
    opacity: 0.6;
}

/*---------------------------------------------------------
メインビジュアル
---------------------------------------------------------*/



section.mv {
    overflow: hidden;
    width: 100%;
    height: 100vh;
    position: relative;
    padding-top: 12vh;
}

section.mv .inner {
    position: relative;
    height: 100%;
}

.mv-copy {
    position: absolute;
    top: 50%;
    background-image: -o-linear-gradient(45deg, rgb(63 76 181 / 90%), rgb(0 167 255 / 90%));
    background-image: linear-gradient(45deg, rgb(63 76 181 / 90%), rgb(0 167 255 / 90%));
    padding: 4vh 0;
    width: 44%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    outline: 1px solid #fff;
    outline-offset: -.5vw;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    white-space: nowrap;
    text-align: center;
}

.mv-copy p.main-copy {
    font-size: 2.4rem;
    color: #fff;
    font-weight: 600;
    letter-spacing: .5vw;
    font-family: "Noto Serif JP", serif;
}

.mv-copy p span.small {
    font-size: .9em;
}

.mv-copy p.sub-copy {
    font-size: 1.2rem;
    margin-top: 1.5vh;
    font-family: "Noto Serif JP", serif;
    color: #fff;
    letter-spacing: .1vw;
    font-weight: 600;
}

.mv-copy p.sub-copy:nth-child(n+2) {
    margin-top: 1vh;
}

.mv {
    position: relative;
    overflow: hidden;
}

.gallery-grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
    -ms-grid-rows: (1fr)[2];
    grid-template-rows: repeat(2, 1fr);
}

.gallery-grid>*:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
}

.gallery-grid>*:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
}

.gallery-grid>*:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
}

.gallery-grid>*:nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
}

.gallery-grid>*:nth-child(5) {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
}

.gallery-grid>*:nth-child(6) {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
}

.gallery-item {
    height: 44vh;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* レスポンシブ対応 */
@media (max-width: 743px) {
    .gallery-grid {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr);
        -ms-grid-rows: (1fr)[3];
        grid-template-rows: repeat(3, 1fr);
    }

    .gallery-grid>*:nth-child(1) {
        -ms-grid-row: 1;
        -ms-grid-column: 1;
    }

    .gallery-grid>*:nth-child(2) {
        -ms-grid-row: 1;
        -ms-grid-column: 2;
    }

    .gallery-grid>*:nth-child(3) {
        -ms-grid-row: 2;
        -ms-grid-column: 1;
    }

    .gallery-grid>*:nth-child(4) {
        -ms-grid-row: 2;
        -ms-grid-column: 2;
    }

    .gallery-grid>*:nth-child(5) {
        -ms-grid-row: 3;
        -ms-grid-column: 1;
    }

    .gallery-grid>*:nth-child(6) {
        -ms-grid-row: 3;
        -ms-grid-column: 2;
    }
}


/*MV お知らせ*/
section.mv .news_box {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
    padding: 1.6vh 1vw;
    background: #fff;
    width: 45%;
    border-left: .5vw solid #1982d6;
}

section.mv .news_box ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

section.mv .news_box a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-decoration: none;
}

section.mv .news_box li {
    border-radius: unset;
    font-size: 1.1rem;
    background: unset;
    text-align: left;
    margin: auto;
    list-style: none;
    font-weight: 500;
}

li.mv_i_news p {
    font-weight: 600;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.5rem;
    background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff));
    background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%);
    background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-style: italic;
    letter-spacing: .1vw;
    position: relative;
    top: .05vw;
}

li.mv_i_news {
    width: 9% !important;
}

li.mv_i_date {
    width: 13% !important;
}

li.mv_i_title {
    width: 63% !important;
}

li.mv_i_date,
li.mv_i_title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
}

li.mv_i_button {
    width: 5% !important;
}

section.mv .news_box a:hover {
    opacity: 0.6;
}



i.fas.fa-caret-square-right {
    font-size: 1.6rem;
    color: #2196F3;
    position: relative;
    top: .5vh;
}


/* TOPコンテンツ */
p.mb {
    margin-bottom: .7em;
}

.scroll {
    text-align: center;
    padding-top: 5px;
    height: 67px;
}

.scroll a {
    position: relative;
    padding-bottom: 5px;
    letter-spacing: .05em;
    color: #fff;
    font-size: 1.1rem;
    text-decoration: none;
    line-height: 1;
    font-family: "Cormorant Infant", serif;
    font-weight: 600;
}

@-webkit-keyframes scroll {
    0% {
        height: 0;
    }

    100% {
        height: 40px;
    }
}

@keyframes scroll {
    0% {
        height: 0;
    }

    100% {
        height: 40px;
    }
}

.scroll a:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    width: 1px;
    height: 0;
    background: #fff;
    margin: auto;
    -moz-animation-name: scroll;
    -moz-animation-duration: 1800ms;
    -moz-animation-timing-function: ease-out;
    -moz-animation-iteration-count: infinite;
    -webkit-animation-name: scroll;
    -webkit-animation-duration: 1800ms;
    -webkit-animation-timing-function: ease-out;
    -webkit-animation-iteration-count: infinite;
    -o-animation-name: scroll;
    -o-animation-duration: 1800ms;
    -o-animation-timing-function: ease-out;
    -o-animation-iteration-count: infinite;
    -ms-animation-name: scroll;
    -ms-animation-duration: 1800ms;
    -ms-animation-timing-function: ease-out;
    -ms-animation-iteration-count: infinite;
}

.mouse .over {
    -o-transition: opacity 200ms ease-in;
    -webkit-transition: opacity 200ms ease-in;
    transition: opacity 200ms ease-in;
}

/* About */
section.top-about {
    background-image: -o-linear-gradient(177deg, #30429b, #00a7ff);
    background-image: linear-gradient(273deg, #30429b, #00a7ff);
}

section.top-about .inner {
    margin-top: 7vw;
    position: relative;
}


section.top-about .flex-wrap {
    width: 87%;
    margin: 0 auto;
    padding-bottom: 10vw;
}

section.top-about .flex-box.left {
    width: 43%;
}

section.top-about .h2-wrap p {
    font-family: "Roboto", sans-serif;
    font-size: 5rem;
    text-decoration: none;
    font-weight: 500;
    font-style: italic;
    letter-spacing: .1vw;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    color: #fff;
    line-height: 1;
}

.home div#contents h2 {
    font-size: 1.2rem;
    letter-spacing: .1vw;
}

section.top-about h2 {
    color: #fff;
    margin-top: .3vw;
}


.home div#contents h2::before {
    content: "－ ";
}

.home div#contents h2::after {
    content: " －";
}

section.top-about .text-wrap {
    margin-top: 1.5vw;
}

section.top-about .flex-box.left .text-wrap p {
    font-size: 1.2rem;
    color: #fff;
}

section.top-about .link a {
    background: #fff;
    display: block;
    width: 50%;
    text-align: center;
    padding: .5vw 0;
    border-radius: 50px;
    font-size: 1.1rem;
    letter-spacing: .1vw;
    margin-top: 1.5vw;
    position: relative;
}

section.top-about .link a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1.5vw;
    margin: auto;
    content: "";
    vertical-align: middle;
    width: .6em;
    height: .6em;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

section.top-about .flex-box.right {
    width: 50%;
}

section.top-about .flex-box.right img {
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    border-radius: 2vw 0 0 2vw;
}

/* service */
section.top-service {
    background: #f5f8fd;
    position: relative;
}

section.top-service .logo img {
    position: absolute;
    opacity: .2;
    width: 80%;
    top: 2vw;
    right: 0;
}

section.top-service .inner {
    width: 80%;
    margin: 0 auto;
    padding: 6vw 0;
}

section.top-service .h2-wrap p,
section.top-news .h2-wrap p {
    font-family: "Roboto", sans-serif;
    font-size: 5rem;
    text-decoration: none;
    font-weight: 500;
    font-style: italic;
    letter-spacing: .1vw;
    background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff));
    background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%);
    background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    line-height: 1;
}

section.top-service h2,
section.top-news h2 {
    background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff));
    background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%);
    background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: .3vw auto 0;
}

.service-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 4vw;
}

.service-item {
    width: calc(33.333% - 2vw);
    margin-bottom: 3vw;
    position: relative;
    overflow: hidden;
    border-radius: 1vw;
    text-decoration: none;
    display: block;
    aspect-ratio: 4 / 3;
    color: #fff;
    -webkit-transition: -webkit-box-shadow 0.3s ease;
    transition: -webkit-box-shadow 0.3s ease;
    -o-transition: box-shadow 0.3s ease;
    transition: box-shadow 0.3s ease;
    transition: box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease;
}

.service-item:hover {
    -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
    opacity: 1;
}

.service-item-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    -o-transition: transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
}

.service-item:hover .service-item-bg {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

.service-name {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: rgba(0, 0, 0, .45);
    font-size: 1.6rem;
    font-weight: 600;
    text-align: center;
    -webkit-transition: background-color .3s ease;
    -o-transition: background-color .3s ease;
    transition: background-color .3s ease;
    padding: 1vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1.3;
    letter-spacing: 1vw;
}

.service-item:hover .service-name {
    background-image: -o-linear-gradient(3deg, rgb(48 66 155 / 50%), rgb(0 167 255 / 50%));
    background-image: linear-gradient(87deg, rgb(48 66 155 / 50%), rgb(0 167 255 / 50%));
}

section.top-service .link a {
    color: #fff;
    display: block;
    width: 45%;
    text-align: center;
    padding: .5vw 0;
    border-radius: 50px;
    font-size: 1.3rem;
    letter-spacing: .1vw;
    margin: 0 auto;
    background-image: -o-linear-gradient(3deg, #30429b, #00a7ff);
    background-image: linear-gradient(87deg, #30429b, #00a7ff);
    position: relative;
}

/* features */
section.top-features {
    background:
        -o-linear-gradient(177deg, rgba(48, 66, 155, 0.75), rgba(0, 167, 255, 0.75)),
        url('https://car-shop-saito.com/wp-content/uploads/2025/06/mechanic-img1.jpg');
    background:
        linear-gradient(273deg, rgba(48, 66, 155, 0.75), rgba(0, 167, 255, 0.75)),
        url('https://car-shop-saito.com/wp-content/uploads/2025/06/mechanic-img1.jpg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

section.top-features .inner {
    width: 80%;
    margin: 0 auto;
    padding: 6vw 0;
    position: relative;
    z-index: 2;
}

section.top-features .h2-wrap p {
    font-family: "Roboto", sans-serif;
    font-size: 5rem;
    text-decoration: none;
    font-weight: 500;
    font-style: italic;
    letter-spacing: .1vw;
    color: #fff;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    line-height: 1;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

section.top-features h2 {
    color: #fff;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: .3vw auto 0;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

section.top-features h2::before,
section.top-features h2::after {
    content: "- ";
    color: #fff;
}

section.top-features h2::after {
    content: " -";
}

.features-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 4vw;
}

.feature-item {
    width: calc(33.333% - 2vw);
    margin-bottom: 3vw;
    position: relative;
    overflow: hidden;
    border-radius: 1vw;
    display: block;
    aspect-ratio: 4 / 3;
    background-color: #333;
}

.feature-item-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}

.feature-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.55);
    padding: 1.5vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    color: #fff;
}

.feature-content .feature-title {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 1vw;
    line-height: 1.4;
    color: #fff;
    letter-spacing: .2vw;
}

.feature-content .feature-description {
    font-size: 1.2rem;
    color: #eee;
    text-align: left;
}


section.top-contact .flex-box.left {
    width: 40%;
    padding: 6vw 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
}

section.top-contact .h2-wrap p {
    font-family: Roboto, sans-serif;
    font-size: 5rem;
    font-weight: 500;
    font-style: italic;
    letter-spacing: 0.1vw;
    -webkit-text-fill-color: transparent;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    line-height: 1;
    text-decoration: none;
    background: -webkit-gradient(linear, left top, right top, from(rgb(48, 66, 155)), color-stop(80%, rgb(0, 167, 255))) text;
    background: -o-linear-gradient(left, rgb(48, 66, 155) 0%, rgb(0, 167, 255) 80%) text;
    background: linear-gradient(90deg, rgb(48, 66, 155) 0%, rgb(0, 167, 255) 80%) text;
    margin: 0 auto;
}

section.top-contact h2 {
    -webkit-text-fill-color: transparent;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background: -webkit-gradient(linear, left top, right top, from(rgb(48, 66, 155)), color-stop(80%, rgb(0, 167, 255))) text;
    background: -o-linear-gradient(left, rgb(48, 66, 155) 0%, rgb(0, 167, 255) 80%) text;
    background: linear-gradient(90deg, rgb(48, 66, 155) 0%, rgb(0, 167, 255) 80%) text;

    margin-top: 0.3vw;
}

section.top-contact .flex-box.right {
    width: 60%;
    background-image: -o-linear-gradient(182deg, #30429b, #00a7ff);
    background-image: linear-gradient(268deg, #30429b, #00a7ff);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

section.top-contact h3 {
    font-size: 1.8rem;
    color: #fff;
    letter-spacing: .1vw;
    margin-bottom: 1.5vw;
    text-align: center;
}

section.top-contact .flex-box.right .flex-wrap.sb {
    width: 85%;
    margin: 0 auto;
}

section.top-contact .flex-box.right .flex-box.tel {
    width: 60%;
}

section.top-contact .flex-box.tel a {
    line-height: 1.3;
    display: block;
    background: #fff;
    text-align: center;
    padding: .5vw 0 .5vw;
    border-radius: .5vw;
}

section.top-contact .flex-box.tel a::before {
    margin-right: .5vw;
    content: "";
    display: inline-block;
    width: 2vw;
    height: 2vw;
    background: url(https://car-shop-saito.com/wp-content/uploads/2025/04/tel-blue-circle2.svg) no-repeat center;
    background-size: contain;
    top: .2vw;
    position: relative;
}

section.top-contact .flex-box.tel a span.number {
    font-family: "Roboto", sans-serif;
    font-size: 2.5rem;
    text-decoration: none;
    font-weight: 700;
    letter-spacing: 0;
    -webkit-text-fill-color: transparent;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    text-decoration: none;
    background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff)) text;
    background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%) text;
    background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%) text;
}

section.top-contact .flex-box.tel a span.time {
    font-size: 1rem;
    letter-spacing: .1vw;
    display: block;
    line-height: 1.8;
}

.flex-box.line,
.flex-box.mail {
    width: 18%;
}

.flex-box.line a {
    background: #00cb00;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: .5vw;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
}

.flex-box.line a img {
    width: 40%;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
    display: block;
}

.flex-box.mail a {
    background: #30429b;
    display: block;
    border-radius: .5vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
}

.flex-box.mail a img {
    width: 40%;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
    display: block;

}

.home div#contents section.top-map h2 {
    background: #242e64;
    font-family: "Roboto", sans-serif;
    font-size: 4rem;
    text-decoration: none;
    font-weight: 500;
    font-style: italic;
    letter-spacing: .1vw;
    color: #fff;
    padding: 1vw;
    margin: 0 auto;
    line-height: 1;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, .3);
    text-align: center;
}

.home div#contents section.top-map h2::before,
.home div#contents section.top-map h2::after {
    display: none;
}

.map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 17.5%;
}

/* Google Mapのiframe */
.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*---------------------------------------------------------
  footer
  ---------------------------------------------------------*/

footer#footer {
    position: relative;
    background-image: -o-linear-gradient(3deg, #30429b, #00a7ff);
    background-image: linear-gradient(87deg, #30429b, #00a7ff);
}

.footer-inner {
    padding: 4vw 0 2vw;
}

.footer_logo img {
    width: 26%;
    margin: 0 auto;
}

footer#footer .link a {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: .5vh 5vw;
    display: block;
    text-align: center;
    margin: 3vh auto;
    background: -o-linear-gradient(150deg, rgb(255 214 136), rgb(255 227 175));
    background: linear-gradient(300deg, rgb(255 214 136), rgb(255 227 175));
    font-size: 1.2rem;
    letter-spacing: .05vw;
    font-weight: 500;
    position: relative;
    border-radius: 50px;
}

footer#footer .add {
    text-align: center;
    color: #fff;
    font-size: 1.1rem;
    margin-top: 1vw;
}

footer#footer p.invoice {
    text-align: center;
    color: #fff;
    font-size: 1.1rem;
    margin-top: 1vh;
    font-weight: 400;
}

.copyright p {
    color: #ffffff;
    text-align: center;
    font-size: .9rem;
    font-weight: 400;
    font-family: var(--font-en);
    letter-spacing: .05vw;
    padding-left: 1vw;
}

a.topBtn {
    display: -ms-grid;
    display: grid;
    place-content: center;
    width: 3.5vw;
    height: 3.5vw;
    cursor: pointer;
    position: fixed;
    bottom: 1vw;
    right: 1vw;
    z-index: 9999;
    -webkit-transition: opacity .5s ease-out, visibility .5s ease-out;
    -o-transition: opacity .5s ease-out, visibility .5s ease-out;
    transition: opacity .5s ease-out, visibility .5s ease-out;
    border: 1.5px solid #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

a.topBtn.is-visible {
    opacity: 1;
    visibility: visible;
}

a.topBtn::before {
    position: absolute;
    inset: 0;
    content: "";
    opacity: .7;
    background-image: -o-linear-gradient(3deg, #30429b, #00a7ff);
    background-image: linear-gradient(87deg, #30429b, #00a7ff);
}

a.topBtn::after {
    width: 1vw;
    height: 1vw;
    content: "";
    border: solid #fff;
    border-width: 2.5px 2.5px 0 0;
    margin-top: 0.7vw;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}


/*---------------------------------------------------------
下層ページ
---------------------------------------------------------*/

section.page-mv {
    background-image: URL(https://car-shop-saito.com/wp-content/uploads/2025/06/mechanic-img1.jpg);
    height: 30vh;
    position: relative;
    margin-top: 12vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-size: cover;
    position: relative;
    background-position: 0 23%;
}

section.page-mv::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-image: -o-linear-gradient(3deg, rgb(48 66 155 / 40%), rgb(0 167 255 / 40%));
    background-image: linear-gradient(87deg, rgb(48 66 155 / 40%), rgb(0 167 255 / 40%));
}

.h1-wrap {
    text-align: center;
    position: relative;
    z-index: 1;
}

section.page-mv h1 {
    font-weight: 500;
    font-size: 2.3rem;
    color: #fff;
    letter-spacing: .5vw;
    position: relative;
    z-index: 1;
    text-align: center;
    line-height: 1.8;
}

.page-id-3 section.page-mv h1,
.page-id-861 section.page-mv h1 {
    font-size: 5.5rem;
}

.h1-wrap p {
    font-size: 1.4rem;
    font-weight: 600;
    font-family: var(--font-en);
    color: #fff;
    letter-spacing: .2vw;
}

.breadcrumb {
    width: 90%;
    margin: 0 auto;
    font-size: .9rem;
    padding-top: 1vh;
    letter-spacing: .15vw;
}

.fix-page.contents .h2-wrap h2 {
    letter-spacing: .3vw;
    margin: 0 auto;
    font-size: 2.2rem;
    text-align: center;
}

section.greeting h2 {
    background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff));
    background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%);
    background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.fix-page.contents .h2-wrap p {
    font-size: 1.3rem;
    font-weight: 600;
    font-family: var(--font-en);
    letter-spacing: .2vw;
    text-align: center;
}

section.greeting .h2-wrap p {
    background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff));
    background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%);
    background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

section.top-contact .title-wrap p.en {
    font-family: Roboto, sans-serif;
    font-size: 5rem;
    font-weight: 500;
    font-style: italic;
    letter-spacing: .1vw;
    -webkit-text-fill-color: transparent;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    line-height: 1;
    text-decoration: none;
    background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff)) text;
    background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%) text;
    background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%) text;
    margin: 0 auto;
}

section.top-contact .title-wrap p.jp {
    -webkit-text-fill-color: transparent;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff)) text;
    background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%) text;
    background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%) text;
    margin-top: .3vw;
    font-size: 1.2rem;
    letter-spacing: .1vw;
}

/*---------------------------------------------------------
サービス一覧
---------------------------------------------------------*/
.text-wrap p {
    font-size: 1.2rem;
}

.service-page-nav .inner {
    width: 70%;
    margin: 7vh auto 0;
}

.service-page-nav ul {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.service-page-nav ul li {
    width: 16%;
}

.service-page-nav ul li a {
    text-decoration: none;
    font-weight: 500;
    font-size: 1.3rem;
    border-radius: 0.2vw;
    -webkit-transition: background-color .2s ease-in-out, color .2s ease-in-out;
    -o-transition: background-color .2s ease-in-out, color .2s ease-in-out;
    transition: background-color .2s ease-in-out, color .2s ease-in-out;
    display: inline-block;
    width: 100%;
    text-align: center;
    background: #03A9F4;
    color: #fff;
    padding: 1vh 0;
    letter-spacing: .1vw;
}

.service-detail-section:nth-of-type(even) {
    background-color: #f5f8fd;
}

.service-detail-section .inner {
    width: 70%;
    margin: 0 auto;
    padding: 10vh 0;
}

section#service-sales .inner,
section#service-coating .inner {
    width: 70%;
    margin: 0 auto;
    padding: 10vh 0 5vh;
}

.service-detail-section .h2-wrap {
    margin-bottom: 3vh;
    text-align: center;
}



.fix-page.contents.service h2:before {
    margin-right: 1vw;
    content: "";
    display: inline-block;
    width: 5vw;
    height: 2vw;
    background: url(https://car-shop-saito.com/wp-content/uploads/2025/05/car-icon.svg) no-repeat center;
    background-size: contain;
    top: .3vw;
    position: relative;
}

p.service-detail-copy {
    background-image: -o-linear-gradient(3deg, #30429b, #00a7ff);
    background-image: linear-gradient(87deg, #30429b, #00a7ff);
    color: #fff;
    text-align: center;
    padding: 1vh 0;
    font-size: 1.5rem;
    letter-spacing: .1vw;
}

.service-intro-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2vw;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin: 5vh auto;
}

.service-intro-image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 43%;
    flex: 0 0 43%;
    max-width: 43%;
}

.service-intro-image img {
    width: 100%;
    height: auto;
    border-radius: .7vw;
    -webkit-box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    display: block;
}

.service-intro-text {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 57%;
    flex: 1 1 57%;
}

.service-intro-text p {
    font-size: 1.2rem;
}


.service-details-content h3 {
    font-size: 1.6rem;
    margin-top: 5vh;
    margin-bottom: 2.5vh;
    text-align: center;
    background: #EEEEEE;
    padding: 1vh 0;
    letter-spacing: .1vw;
    font-weight: 600;
}

dl.service-detail-features {
    list-style: none;
    padding-left: 0;
    margin: 5vh auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}


.service-detail-features div:nth-child(n+3) {
    margin-top: 2vh;
}


.service-detail-features li {
    font-size: 1rem;
    line-height: 1.8;
    margin-bottom: 0.9em;
    position: relative;
    color: #444;
}

.service-detail-features.dash-list li::before {
    content: "–";
    position: absolute;
    left: 0.3em;
    color: #30429b;
    font-weight: bold;
    font-size: 1.3em;
    top: -0.05em;
}

.service-detail-features.star-list li::before {
    content: "★";
    position: absolute;
    left: 0;
    color: #f39c12;
    font-size: 1em;
    top: 0.1em;
}

.course-grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1.5vw 1fr 1.5vw 1fr;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5vw;
    margin-top: 5vh;
    margin-bottom: 3vh;
}

.course-item {
    background-color: #ffffff;
    -webkit-box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.08);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.course-item h4 {
    font-size: 1.4rem;
    font-weight: 600;
    padding: 1vh 0;
    background-color: #2196F3;
    color: #fff;
    text-align: center;
}

.popular-badge {
    background-color: #E91E63;
    color: #fff;
    font-size: .8rem;
    padding: .4em .8em;
    border-radius: 50px;
    font-weight: 600;
    letter-spacing: .5px;
    position: relative;
    top: -.2vw;
    margin-left: .5vw;
}

dl.course-recommend dt,
.course-details h5,
.s-price-table h5 {
    text-align: center;
    padding: 1vh;
    background: #eee;
    font-size: 1.2rem;
}

dl.course-recommend dt, .course-details h5, .s-price-table h5 {
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
}

dl.course-recommend dd {
    padding: 1vh 1vw 4vh;
    font-size: 1.1rem;
	border: 1px solid #ccc;
}



.course-details ul {
    list-style: disc;
    padding: 2vh 0 4vh 2vw;
	border: 1px solid #ccc;
}

.course-details li {
    font-size: 1.1rem;
}

.course-price {
    font-size: 1.05rem;
    font-weight: 600;
    text-align: right;
    margin-top: auto;
    border-top: 1px solid #eee;
    padding-top: 1em;
}

.s-price-table table {
    width: 100%;
    border-collapse: collapse;
	border: none;
}

.s-price-table th,
.s-price-table td {
    border: 1px solid #ccc;
    padding: 1.5vh 1.5vw;
    font-size: 1.1rem;
    text-align: left;
    vertical-align: middle;
	border-collapse: collapse;
}
.s-price-table tr:first-child th,
.s-price-table tr:first-child td {
    border-top: 1px solid #ccc;
}

.flow-list {
    list-style: none;
    padding-left: 0;
    counter-reset: flow-counter;
    overflow: hidden;
    width: 50%;
    margin: 5vh auto;
    position: relative;
}

dl.flow-list div {
    position: relative;
    padding: 2vh 1vw 2vh 2.5vw;
    font-size: 1rem;
    border: 2px solid #2196f3;
    border-radius: .3vw;
    margin: 0 2vw;
    background: #fff;
}

dl.flow-list div:nth-child(n+2) {
    margin-top: 3vh;
}

dl.flow-list::after {
    position: absolute;
    height: 100%;
    width: 1vw;
    background: #c7dff2;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: -1;
}

.flow-list dt:before {
    counter-increment: flow-counter;
    content: counter(flow-counter);
    position: absolute;
    left: -1.75vw;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #fff;
    background: #03A9F4;
    width: 3.5vw;
    height: 3.5vw;
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1.8rem;
    -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .1);
    box-shadow: 0 1px 3px rgba(0, 0, 0, .1);
    font-family: "Roboto", sans-serif;
}

.flow-list dt {
    display: block;
    font-size: 1.3rem;
    font-weight: 600;
}

.flow-list dd {
    font-size: 1.1rem;
}

.type-wrap p {
    font-size: 1.2rem;
    text-align: center;
}

.fix-page.contents.service .text-wrap p,
section.payment .text-wrap p {
    text-align: center;
}

.car-brand-wrap .flex-box {
    width: 49%;
}

.car-brand-wrap h4 {
    font-size: 1.5rem;
    color: var(--color-main);
    padding-bottom: .5em;
    border-bottom: 2px solid var(--color-main);
    margin-bottom: 2vh;
    text-align: left;
}

section#service-coating .img-wrap img {
    width: 75%;
    margin: 0 auto 2vh;
}

.service-detail-features div {
    color: #fff;
    text-align: center;
    width: 49%;
    border: 1px solid #333;
    background: #fff;
}

.service-detail-features dt {
    font-size: 1.3rem;
    letter-spacing: .1vw;
    font-weight: 600;
    line-height: 1.5;
    background: #1d2d7e;
    padding: 1vh 0;
}

.service-detail-features dd {
    font-size: 1.2rem;
    color: #333;
    padding: 1.5vh 1vw;
    text-align: center;
    line-height: 1.6;
    background: #fff;
}

section#service-insurance .img-wrap img {
    width: 80%;
    margin: 0 auto 3vh;
}

.service-details-content h3.faq {
    margin-bottom: 0;
}

.faq-wrap {
    padding: 3vh 0;
    background: #fff;
}

ul.faq-list.tick-list {
    list-style: none;
    text-align: center;
    font-size: 1.2rem;
}

.faq-wrap p {
    text-align: center;
    font-size: 1.2rem;
    margin-top: 2vh;
}

.used-car-sales .img-wrap {
    width: 25%;
    margin: 5vh auto 3vh;
}

.used-car-sales p {
    text-align: center;
    font-size: 1.2rem;
}

.goo-pit img {
    text-align: center;
    margin: 3vh auto 0;
    width: 30%;
}

.price-link a {
    position: relative;
    margin: 5vh auto 0;
    color: #fff;
    display: block;
    width: 45%;
    text-align: center;
    padding: .5vw 0;
    border-radius: 50px;
    font-size: 1.3rem;
    letter-spacing: .1vw;
    background-image: -o-linear-gradient(3deg, #30429b, #00a7ff);
    background-image: linear-gradient(87deg, #30429b, #00a7ff);
}

.swiper-container.my-swiper.swiper-initialized.swiper-horizontal.swiper-backface-hidden {
    position: relative;
}

/*---------------------------------------------------------
料金表
---------------------------------------------------------*/
.price-table-section,
.price-notes {
    position: relative;
}

.price-table-section:nth-of-type(odd),
.page-id-52 section.top-contact .flex-box.left {
    background: #f5f8fd;
}

.price-table-section .inner,
.price-notes .inner {
    width: 70%;
    margin: 0 auto;
    padding: 7vh 0;
}

.price-table-section .h2-wrap,
.price-notes .h2-wrap {
    margin-bottom: 4vh;
}

.price-category {
    margin-bottom: 6vh;
}

.price-category h3,
.fix-page.contents .price-notes h3 {
    font-size: 1.5rem;
    color: var(--color-main);
    ;
    padding-bottom: 0.5em;
    border-bottom: 2px solid var(--color-main);
    ;
    margin-bottom: 2vh;
    text-align: left;
}

p.section-note {
    font-size: 1.2rem;
    text-align: center;
    margin: 4vh auto;
}

.price-tables-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 2vw;
    margin-bottom: 2vh;
}

.price-tables-wrap table {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 calc(33.333% - 2vw * 2 / 3);
    flex: 1 1 calc(33.333% - 2vw * 2 / 3);
    min-width: auto;
    -ms-flex-preferred-size: 31%;
    flex-basis: 31%;
}

.price-category table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 2vh;
    background: #fff;
/*     -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); */
}

.price-category table caption {
    font-size: 1.2rem;
    font-weight: bold;
    padding: 1vh 0;
    background-color: #2196f3;
    color: #fff;
    text-align: center;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}

.price-category th,
.price-category td {
    border: 1px solid #ccc;
    padding: 1.5vh 1.5vw;
    font-size: 1.1rem;
    text-align: left;
    vertical-align: middle;
}

.price-category thead th {
    background-color: #f0f5fb;
    color: #333;
    font-weight: 500;
}

.price-category tbody th {
    background-color: #f5f8fd;
    font-weight: 500;
    width: 40%;
}

.price-category td:last-child,
.price-category th:last-child {
    text-align: right;
    font-weight: 500;
    width: 36%;
}

.price-category td:last-child {
    font-family: 'Roboto', sans-serif;
}

.price-notes .notes-list {
    list-style: none;
    padding-left: 0;
    margin-top: 3vh;
}

.price-notes .notes-list li {
    font-size: 1.1rem;
    padding-left: 1.5em;
    position: relative;
    margin-bottom: 1vh;
}

.price-notes .notes-list li::before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0;
    color: var(--color-main);
    ;
    font-weight: bold;
}

section.payment .inner {
    margin: 0 auto;
    padding: 7vh 0;
}

section.payment .text-wrap {
    margin-top: 5vh;
}

section.payment .img-wrap {
    width: 60%;
    margin: 5vh auto;
}

section.price-table-section.coating-price .flex-box {
    width: 48%;
}

section.price-table-section.coating-price .flex-box a {
    display: block;
    background-image: -o-linear-gradient(3deg, #30429b, #00a7ff);
    background-image: linear-gradient(87deg, #30429b, #00a7ff);
    border-radius: 50px;
    text-align: center;
    color: #fff;
    font-size: 1.5rem;
    padding: .7vh 0;
    letter-spacing: .1vw;
    position: relative;
}

section.price-table-section.coating-price .flex-box a::after,
.price-link a::after,
section.top-service .link a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1.5vw;
    margin: auto;
    content: "";
    vertical-align: middle;
    width: .5em;
    height: .5em;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/*---------------------------------------------------------
よくある質問
---------------------------------------------------------*/
section.faq-content .inner {
    width: 65%;
    margin: 10vh auto;
}

.faq-list dt {
    font-size: 1.2rem;
    font-weight: 600;
    position: relative;
    padding: 2vh 0 2vh 3vw;
    background: #f5f8fd;
}

.faq-list dt::before {
    content: "Q";
    position: absolute;
    font-weight: 600;
    color: #0272d2;
    font-size: 1.4rem;
    left: 1vw;
    top: 1.5vh;
}

.faq-list dd {
    font-size: 1.2rem;
    margin-bottom: 5vh;
    position: relative;
    padding: 2vh 1vw 0 3vw;
}

.faq-list dd::before {
    content: "A";
    position: absolute;
    left: 1vw;
    top: 1.6vh;
    font-weight: 700;
    color: #0272d2;
    font-size: 1.4rem;
}

.faq-list dd ul,
.faq-list dd ol {
    margin-top: 1vh;
    margin-bottom: 1vh;
    padding-left: 1.5vw;
}

.faq-list dd ul li {
    list-style-type: disc;
    margin-bottom: 1vh;
}

.faq-list dd ol li {
    list-style-type: decimal;
    margin-bottom: 1vh;
}

.faq-list dd a {
    color: var(--color-main);
    text-decoration: underline;
}

.page-id-50 section.top-contact .flex-box.left {
    background: #f5f8fd;
}

/*---------------------------------------------------------
会社概要
---------------------------------------------------------*/
section.greeting {
    position: relative;
    background: #f5f8fd;

}

section.greeting .inner {
    width: 100%;
    padding: 10vh 0;
    margin-inline: auto;
}

section.greeting .flex-box.left {
    width: 47%;
    margin-right: 5%;
    margin-left: 3vw;
    position: relative;
}

section.greeting .flex-box.left::before {
    content: "";
    position: absolute;
    top: 1vw;
    left: -1vw;
    width: 100%;
    height: 100%;
    background-image: -o-linear-gradient(178deg, #30429b, #00a7ff);
    background-image: linear-gradient(272deg, #30429b, #00a7ff);
    z-index: 0;
    border-radius: 1vw;
}

section.greeting .flex-box.left img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
    display: block;
    border-radius: 1vw;
}

section.greeting .flex-box.right {
    width: 35%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

section.greeting .h2-wrap {
    text-align: center;
}

section.greeting h2 {
    letter-spacing: .5vw;
    margin: 0 auto;
    font-size: 2.3rem;
    text-align: center;
}

section.greeting .text-wrap {
    margin-top: 3vh;
}

section.greeting .text-wrap p {
    font-size: 1.2rem;
    font-size: 1.2rem;
}

section.greeting img.name {
    width: 50%;
    margin: 4vh 0 0 auto;
}

/* 沿革 */
section.history {
    position: relative;
    padding: 7vh 0 10vh;
}

section.history .logo {
    position: absolute;
    opacity: .2;
    width: 55%;
    bottom: 0;
    right: 0;
}

section.history .inner {
    width: 60%;
    margin: 0 auto;
}

section.history .text-wrap p {
    text-align: center;
    font-size: 1.2rem;
    margin-top: 4vh;
}

section.history .history-list {
    margin-top: 3vh;
    border-bottom: 1px solid #48666f;
}

section.history dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    border-top: 1px solid #48666f;
}

section.history dt {
    text-align: center;
    font-weight: 500;
    font-size: 1.2rem;
    color: var(--color-main);
    width: 20%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    padding: 3vh 0;
}

section.history dd {
    width: 80%;
    text-align: left;
    font-size: 1.2rem;
    padding: 3vh 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

section.history dt:nth-child(n+2),
section.history dd:nth-child(n+3) {
    border-top: 1px solid #333;
}

section.company {
    background: #f5f8fd;
}

section.company .inner {
    width: 60%;
    margin-inline: auto;
    padding: 7vh 0 10vh;
    padding: 7vh 0 10vh;
}


section.company table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 5vh;
}

section.company th,
section.company td {
    border: 1px solid #ccc;
    padding: 2vh 2vw;
    font-size: 1.2rem;
}

section.company th,
section.company td {
    font-weight: 500;
}

section.company th {
    width: 25%;
    background-color: #f0f0f0;
}

section.company td {
    background: #fff;
}

/*---------------------------------------------------------
お知らせ
---------------------------------------------------------*/

.page-container.news {
    max-width: 72%;
    width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 7vh 0 10vh;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.news-contents {
    width: calc(100% - 30%);
    padding-right: 4vw;
}

article.article-list {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    margin-bottom: 3vh;
    padding: 3vh 2vh;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-shadow: rgb(120 120 120 / 11%) 0px 5px 5px 0px;
    box-shadow: rgb(120 120 120 / 11%) 0px 5px 5px 0px;
    ;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    border-radius: .7vw;
    background: #f5f8fd;
}

article.article-list .text {
    width: 100%;
    position: relative;
}

article.article-list .text h2 {
    font-size: 1.3rem;
    margin-bottom: .2em;
    line-height: 1.4;
    font-weight: 500;
}

article.article-list a {
    text-decoration: none;
    width: 100%;
}

article.article-list a img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 3 / 2;
}

.cat-day {
    position: relative;
}

ul.post-categories {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

ul.post-categories a {
    background: var(--color-theme);
    display: inline;
    color: #fff;
    padding: .2em 1em;
    margin-right: .5em;
    font-size: .8rem;
    border-radius: 50px;
}

ul.post-categories li {
    list-style: none;
}

article.article-list .archive-text {
    margin-top: 1vh;
    line-height: 1.6;
    font-size: 1rem;
}

.pagination:not(:empty) {
    margin: 2vh 0;
    text-align: center;
}

.pagination ul {
    font-size: 0;
}

.pagination ul li {
    font-size: 1rem;
    display: inline-block;
    margin-right: .5vw;
}

.pagination ul li:last-child {
    border: 0;
}

.pagination ul li a,
.pagination .current {
    display: block;
    padding: 0 .7vw;
    border: 2px solid #2196f3;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.3rem;
    font-family: "Roboto", sans-serif;
    line-height: 1.6;
    border-radius: .2vw;
}

i.fas.fa-angle-right,
i.fas.fa-angle-left {
    color: #2196f3;
}

.pagination ul li .prev,
.pagination ul li .next {
    border: 0;
}

.pagination ul li a {
    text-decoration: none;
    color: #2196f3;
    font-weight: 500;
}

.pagination ul li a:hover {
    opacity: .6;
}

.pagination .current {
    color: #fff;
    background-color: #2196f3;
}

.single-post section.top-contact .flex-box.left {
    background: #f5f8fd;
}

/*---------------------------------------------------------
投稿ページ
---------------------------------------------------------*/

span.cat-data a {
    background: #1982d6;
    display: inline;
    color: #fff;
    padding: .2em 1em;
    margin-right: .5em;
    font-size: .8rem;
    border-radius: 50px;
}

.single h1 {
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: .02vw;
    line-height: 1.6;
}

.article-date {
    text-align: right;
    margin-bottom: 3vh;
    font-size: 1rem;
    display: block;
}

span.st-mymarker-s {
    background: -o-linear-gradient(transparent 70%, #d4dff4 0%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(0%, #d4dff4));
    background: linear-gradient(transparent 70%, #d4dff4 0%);
    font-weight: 700;
}

.fixed-page h2,
.single article h2 {
    font-size: 1.6rem;
    font-weight: 600;
    letter-spacing: .04vw;
    margin: 5vh auto 3vh;
    padding: 2vh 1vw;
    border-left: .25vw solid #1982d6;
    line-height: 1;
    background: #f5f8fd;
}

.single .sale-detail h3,
.single .news-contents h3 {
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: .04vw;
    margin: 3vh auto 3vh;
    padding: 1vh .5vw;
    border-bottom: 2px solid #1982d6;
}

.fixed-page h4,
.single article h4 {
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: .04vw;
    margin: 3vh auto 3vh;
    padding: 1vh 1.2vw 0;
    position: relative;
}

.fixed-page h4::before,
.single article h4::before {
    content: "";
    display: block;
    position: absolute;
    top: 1.3vw;
    left: 0;
    width: .7vw;
    height: .7vw;
    background-color: #1982d6;
}

.fixed-page h5,
.single article h5 {
    font-size: 1.3rem;
    font-weight: 600;
    letter-spacing: .04vw;
    margin: 3vh auto 3vh;
    padding: 1vh 0 0;
    position: relative;
}

.fixed-page .inner p,
.single article p {
    font-size: 1.2rem;
    font-weight: 500;
    margin-top: 3vh;
    line-height: 2;
}

.single .sale-detail .content ul,
.single .single-text-wrap ul,
.single .sale-detail ol,
.single .single-text-wrap ol {
    margin: 3vh auto 5vh;
    padding: 3vh 1vw 3vh 2.5vw;
    background-color: #f7f7f7;

}

.single .sale-detail .content ul ul,
.single .single-text-wrap ul ul {
    margin-top: unset;
    margin-bottom: .7vw;
    margin-left: 0;
}

.single .sale-detail .content ul li,
.single .single-text-wrap ul li {
    list-style-type: disc;
    font-size: 1.2rem;
    margin-bottom: .7vh;
}

.single .sale-detail .content ul li:last-of-type,
.single .single-text-wrap ul li:last-of-type,
.single .sale-detail .content ol li:last-of-type,
.single .single-text-wrap ol li:last-of-type {
    margin-bottom: 0;
}

.single .sale-detail .content ol li,
.single .single-text-wrap ol li {
    font-size: 1.2rem;
    margin-bottom: .7vh;
}

.single .sale-detail .content ul ul li,
.single .single-text-wrap ul ul li {
    list-style: none;
}

.single .sale-detail .content figure,
.single article figure {
    margin: 3vh 0;
}

.page_sns {
    width: 48%;
    margin: 0 auto;
}


article.article-content {
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 0.5em;
}

article.article-content p.cat-data a {
    background-image: -o-linear-gradient(43deg, #37c1ff, #30bdff);
    background-image: linear-gradient(47deg, #37c1ff, #30bdff);
    display: inline;
    color: #fff;
    padding: 0.5vh 1em;
    border-radius: 50px;
    margin-right: 0.5em;
    font-size: .8rem;
    text-decoration: none;
}

.article-tag {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.single .single-text-wrap td,
.single .single-text-wrap td,
.single .sale-detail td,
.single .sale-detail td {
    border: 1.5px solid #033059 !important;
    padding: 1vh 1vw;
    font-size: 1.2rem;
}

.article-tag ul {
    margin-bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 0 !Important;
}

.single .post p.tag {
    background: #333;
    color: #fff;
    text-align: center;
    width: 10%;
    border-radius: 4px;
    font-size: .9rem !important;
    padding: 0 0;
    margin-bottom: 0;
    display: -ms-grid;
    display: grid;
    place-items: center;
}

.single .post .article-tag ul {
    margin-bottom: 0;
    margin-left: 0;
}

.single article .article-tag ul li {
    list-style-type: none;
    list-style: none;
    padding-right: 1em;
    font-size: 1.2rem;
}

.article-tag a {
    text-decoration: none;
    color: var(--color-main);
    font-size: 1.2rem;
}

.article-tag a::before {
    background: no-repeat;
    width: 1.2vw;
    height: 2.2vh;
    background-image: url(https://car-shop-saito.com/wp-content/uploads/2025/06/tag-blue.svg);
    content: '';
    margin-right: .3vw;
    display: inline-block;
    top: .3vh;
    position: relative;
}

.youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin-bottom: 2em;
}

.youtube iframe {
    width: 100%;
    height: 100%;
}

blockquote {
    position: relative;
    border: 1px solid #607D8B;
    border-radius: .5vw;
    padding: 5vh 2vh 1vh;
    background: #f7f7f7;
    margin: 5vh auto;
}

blockquote:before {
    margin-right: 1em;
    display: block;
    position: absolute;
    width: 1.5vw;
    height: 1.5vw;
    background-image: url("https://car-shop-saito.com/wp-content/uploads/2025/06/block-quote.svg");
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    left: 1.5vh;
    top: 1.5vh;
}

blockquote:after {
    margin-right: 1em;
    display: block;
    position: absolute;
    width: 1.5vw;
    height: 1.5vw;
    background-image: url("https://car-shop-saito.com/wp-content/uploads/2025/06/block-quote.svg");
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    right: 0;
    bottom: .5vh;
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1);
}

blockquote cite {
    display: block;
    font-size: 1rem;
    text-align: right;
    color: #9e9e9e;
    padding-right: 5vh;
}

.single article blockquote p {
    margin-top: 0;
}

blockquote a {
    display: block;
    text-align: right;
    margin-right: 2vw;
}


nav.page-nav {
    margin: 5vh auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.page-nav .prev-link {
    width: 49%;
    text-align: left;
    text-decoration: none;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--color-main);
    border: 2px solid #1982d6;
    -webkit-transition: .4s ease-in-out;
    -o-transition: .4s ease-in-out;
    transition: .4s ease-in-out;
    font-size: .85rem;
    line-height: 1.5;
    padding: 1vh .7vw;
    font-weight: 600;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.1em;
}

.page-nav .next-link {
    width: 49%;
    text-align: right;
    text-decoration: none;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: var(--color-main);
    border: 2px solid #1982d6;
    -webkit-transition: .4s ease-in-out;
    -o-transition: .4s ease-in-out;
    transition: .4s ease-in-out;
    font-size: .85rem;
    line-height: 1.5;
    padding: 1vh .7vw;
    font-weight: 600;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    letter-spacing: 0.1em;
}

.page-nav .prev-link::before {
    content: "Before";
    position: absolute;
    top: -.95em;
    left: 0;
    line-height: 1;
    color: #1982d6;
    font-size: 1.3rem;
    letter-spacing: .1vw;
    font-weight: 500;
    font-family: "Outfit", sans-serif;
}

.page-nav .next-link:before {
    content: "Next";
    position: absolute;
    top: -.95em;
    right: 0;
    line-height: 1;
    color: #1982d6;
    font-size: 1.3rem;
    letter-spacing: .1vw;
    font-weight: 500;
    font-family: "Outfit", sans-serif;
}

nav.page-nav a:hover {
    background: #ebf9ff;
}

.share {
    margin-bottom: 7vh;
    margin-top: 3vh;
    position: relative;
    z-index: 1;
}

.home .share,
.page-id-711 .share {
    width: 55%;
    margin: 0 auto;
}

.single article .share p {
    text-align: center;
    font-size: 1.5rem;
    margin-bottom: 0;
    letter-spacing: .15vw;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: 500;
    color: #1982d6;
    font-family: "Outfit", sans-serif;
}

.single article .share ul {
    width: 40%;
    margin: 1vh auto 0;
    padding: 0;
    list-style: none;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    margin-left: auto;
}

.share li {
    width: 31%;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.share li a,
.share li button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 2.5vw;
    width: 2.5vw;
    border-radius: 50px;
}

.share li a {
    border-radius: 50px;
}

.share li button {
    border-radius: .1vw;
    width: 3.5vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.share li button img {
    width: 66%;
}

.share li a:visited {
    opacity: .6;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

.facebook_share a {
    background-color: #1877f1;
    color: #ffffff;
}

li.facebook_share a img {
    width: 32%;
}

.line_share a {
    background-color: #1dcd00;
    color: #ffffff;
}

li.line_share a img {
    width: 63%;
}

.tweet_share a {
    background-color: #444;
    color: #fff;
}

li.tweet_share a img {
    width: 50%;
}

.share li a:hover {
    opacity: 0.6;
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
}

button.share-url {
    background-color: #30429b;
    color: #ffffff;
}

.url-copied {
    display: none;
    position: absolute;
    bottom: -4vw;
    left: 65%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 1000;
}

.url-copied span {
    background: #30429b;
    color: #fff;
    padding: .5vw 1vw;
    border-radius: 3px;
    font-size: .8rem;
    white-space: nowrap;
}

@media(max-width: 599px) {
    .share li {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .share li i {
        font-size: 1.3em;
        padding-top: 3px;
    }

    .share li a {
        font-size: .7rem;
    }

    .share li a svg {
        font-size: .95rem;
    }

    .share ul {
        width: 46%;
        margin: 3vw auto 0;
    }

    .share li a {
        height: 8.8vw;
        width: 8.8vw;
    }

    nav.page-nav {
        margin: 5vh 0;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .share li button {
        height: 8.5vw;
        width: 10.5vw;
    }
}

.sidebar {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: 0;
    width: 30%;
}

aside#sidebar h4 {
    font-size: 1.2rem;
    margin-bottom: 2vh;
    padding-bottom: .5vh;
    font-weight: 600;
    letter-spacing: .1vw;
    border-bottom: 2.5px solid;
    -o-border-image: -o-linear-gradient(3deg, #30429b, #00a7ff);
    border-image: linear-gradient(87deg, #30429b, #00a7ff);
    border-image-slice: 1;
}

div#latest_posts_widget-3 ul li {
    list-style: none;
    padding: 0 .5vw 1vh;
}

div#latest_posts_widget-3 ul li:nth-child(n+2) {
    border-top: 1.5px solid #333;
    padding-top: 1vh;
}

div#latest_posts_widget-3 ul li:last-of-type {
    border-bottom: 1.5px solid #333;
}

div#latest_posts_widget-3 p.blog_title {
    font-size: 1.1rem;
}

div#latest_posts_widget-3 p.post_date {
    text-align: right;
    font-size: .9rem;
}

div#block-7,
div#block-9 {
    margin-top: 5vh;
}

div#block-7 ul,
div#block-9 ul {
    margin-left: 1.5vw;
}

div#block-7 ul li,
div#block-9 ul li {
    font-size: 1.1rem;
    line-height: 2;
}

div#block-7 ul li::marker,
div#block-9 ul li::marker {
    color: #1982d6;
}

/*---------------------------------------------------------
アーカイブ
---------------------------------------------------------*/
.category h1,
.date h1,
.date h1 {
    font-weight: 500;
    font-size: 1.6rem;
    letter-spacing: .05vw;
    color: var(--color-theme);
    margin-bottom: 2vh;
}

.archive p.article-date {
    font-size: .9rem;
    margin-bottom: 0;
}

/*---------------------------------------------------------
お問い合わせ
---------------------------------------------------------*/

.table-res-form {
    width: 100%;
    margin-top: 5vh;
}


.table-res-form tr.td_last {
    border: unset;
}

.table-res-form th,
.table-res-form td {
    padding: 3vh 3vh 3vh 0;
}

.table-res-form th {
    font-size: 1.3rem;
    width: 27%;
    text-align: right;
    vertical-align: top;
    font-weight: 500;
}

.table-res-form th span.parentheses {
    font-size: 1rem;
    display: block;
    line-height: 1.5;
    margin-top: 1vh;
}

.table-res-form td {
    vertical-align: middle;
}

.table-res-form .requied {
    font-size: .8em;
    color: #fff;
    display: inline-block;
    padding: .2vh .3vw;
    background: var(--color-main);
    position: relative;
    top: -1px;
    margin-left: .2vw;
}

.wpcf7 input,
.wpcf7 textarea {
    border: 1px solid #033059 !important;
}

.wpcf7 .wpcf7-submit {
    width: 50% !important;
}

span.wpcf7-form-control.wpcf7-checkbox {
    display: -ms-grid;
    display: grid;
    text-align: left;
    font-size: 1.2rem;
}

span.wpcf7-list-item-label {
    line-height: 1.8;
}

span.wpcf7-list-item.last.has-free-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

span.wpcf7-list-item.last.has-free-text label {
    width: 12%;
}

span.wpcf7-list-item.last.has-free-text input.wpcf7-free-text {
    width: 30%;
    padding: 0 0.5em;
    height: 25px;
    margin-top: 4px;
}

.table-res-form input[type="text"],
input[type="email"],
textarea,
.wpcf7 input[type="tel"],
select.wpcf7-form-control.wpcf7-select.wpcf7-validates-as-required,
select.wpcf7-form-control.wpcf7-select,
.wpcf7-text {
    padding: 0.2em 0.5em;
    height: 2.5vw;
    font-size: 1.2rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 0;
    width: 100%;
}

.table-res-form input[type="text"]:focus,
textarea:focus {
    background: #FFF;
    -webkit-box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
}

.wpcf7 input[type="checkbox"] {
    left: -.2vw;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 1.1vw;
    height: 1.1vw;
    border-radius: 0;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    top: -.2vh;
    position: relative;
}

.wpcf7 input[type="checkbox"]:checked {
    background-color: var(--color-main);
    border-color: var(--color-main);
    position: relative;
}

.wpcf7 input[type=checkbox]:checked:after {
    content: "";
    display: block;
    width: 1vw;
    height: .5vw;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    left: 1px;
    top: 1px;
    z-index: 1;
}

textarea.wpcf7-form-control.wpcf7-textarea {
    height: 16em;
    padding: 0.5em;
}


.table-res-form input[type=submit] {
    position: relative;
    padding: .5vh 0;
    color: #fff;
    background: var(--color-main);
    font-weight: 500;
    font-size: 1.4rem;
    letter-spacing: .2em;
    -webkit-transition: .5s;
    -o-transition: .5s;
    transition: .5s;
    border: 1.5px solid #fff !important;
    border-radius: 0;
}

.table-res-form input[type=submit]:hover {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 1.5px solid #033059 !important;
    background: #ffffff;
    color: var(--color-main);
}

span.wpcf7-spinner {
    display: none;
}

tr.td_last {
    text-align: center;
}

tr.td_last td {
    padding: 1.5em 0;
}

.home tr.td_last td {
    padding: 0;
}

span.wpcf7-not-valid-tip {
    color: #E91E63;
    text-align: center;
    display: block;
    font-size: 1rem;
}

.wpcf7 form .wpcf7-response-output {
    margin: 2vh auto 2vh !important;
    padding: .5em !important;
}

form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #e91e63 !important;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #E91E63 !important;
}

.wpcf7-response-output {
    text-align: center;
    color: #e91e63;
    margin-top: 2em;
    padding: 0.5em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

select {
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
    border: .5px solid #333 !important;
}

.recaptcha {
    text-align: center;
    margin-bottom: 1em;
}

.recaptcha a {
    text-decoration: none;
    color: var(--color-main);
}

.grecaptcha-badge {
    visibility: hidden;
}

.screen-reader-response {
    display: none;
}

p.pp {
    text-align: center;
}

p.pp a {
    color: var(--color-main);
    text-decoration: none;
    font-size: 1.2rem;
}

p.pp a:hover {
    opacity: 0.6;
}

.contact_text_bottom {
    text-align: center;
    margin-top: 3vh;
    font-size: 1rem;
}

/*---------------------------------------------------------
固定ページ
---------------------------------------------------------*/
.fixed-page {
    margin-top: 12vh;
}

.fixed-page .inner {
    width: 55%;
    margin: 0 auto;
    padding: 7vh 0 10vh;
}

.fixed-page h1 {
    font-size: 1.6rem;
    font-weight: 600;
    letter-spacing: .02vw;
    line-height: 1.8;
}

.fixed-page a {
    text-decoration: underline;
    color: var(--color-main);
}

.breadcrumb a {
    text-decoration: none;
}

/*---------------------------------------------------------
404 ページ
---------------------------------------------------------*/
.error404 main {
    text-align: center;
    padding: 7vh 0 15vh;
}

.error404 main h2 {
    font-size: 2rem;
    margin-bottom: 3vh;
    color: var(--color-main);
}

.error404 main p {
    font-size: 1.3rem;
}

.error404 main div {
    margin-top: 5vh;
}

.error404 main div a {
    width: 20%;
    padding: .7vh 0;
    display: block;
    text-align: center;
    margin: 0 auto;
    background-image: linear-gradient(87deg, #30429b, #00a7ff);
    color: #fff;
    font-size: 1.2rem;
    letter-spacing: .05vw;
    font-weight: 500;
    position: relative;
}

/*---------------------------------------------------------
  スマホ
  ---------------------------------------------------------*/

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

    body {
        line-height: 1.8;
    }

    .topBtn {
        display: none !important;
    }

    br.sp_block {
        display: block !important;
    }

    .sp_block {
        display: block !important;
    }

    .sp_inlineblock {
        display: inline-block !important;
    }

    span.pc_inlineblock {
        display: none !important;
    }

    .pc_block {
        display: none !important;
    }

    .pc_inlineblock {
        display: none;
    }

    div#side_btn,
    section.mv .news_box,
    section.top-about .flex-box.right,
    .copyright {
        display: none;
    }

    header {
        position: relative;
    }



    .site-title-wrap {
        width: 100%;
    }

    .site-title-wrap img {
        width: 70%;
        margin: 0 auto;
    }

    section.mv {
        padding-top: 0;
        height: 88vh;
        outline: .7px solid #fff;
        outline-offset: -1.1vw;
    }

    .mv-copy {
        padding: 2.5vh 0;
        width: 95%;
        outline: .7px solid #fff;
        outline-offset: -1.5vw;
    }

    .gallery-item {
        height: 29.33vh;
    }

    section.top-about .img-wrap.sp_block {
        margin: 3vh 0 1vh;
    }

    section.top-about .link a {
        margin: 5vh auto 0;
        letter-spacing: .5vw;
    }

    section.top-service .link a {
        margin: 2vh auto 0;
        letter-spacing: .5vw;
    }

    section.top-about .link a::after,
    section.top-service .link a::after {
        right: 3.5vw;
    }

    .feature-content {
        background-color: rgb(0 0 0 / 44%);
    }

    .map {
        padding-top: 70%;
    }

    section.top-service .inner,
    section.top-features .inner {
        padding: 10vw 0 12vw;
    }

    section.top-contact .flex-box.tel a:before {
        width: 7vw;
        height: 7vw;
        margin-right: 2vw;
        top: .4vw;
    }

    footer#footer .add {
        font-size: 3.5vw;
        margin-top: 3vw;
        font-weight: 400;
    }

    section.top-contact .flex-box.right {
        padding: 3vh 0 5vh;
    }

    .flex-box.mail a,
    .flex-box.line a {
        border: 1px solid #fff;
        height: 8vh;
    }

    .flex-box.line a img {
        width: auto;
        height: 5vh;
    }

    .flex-box.mail a img {
        width: auto;
        height: 3.5vh;
    }

    section.top-contact .flex-box.tel a {
        padding: 1vw 0;
    }

    .footer-inner {
        padding: 6vh 0 13vh;
    }

    .fix-page.contents.service h2:before {
        margin-right: 2vw;
        width: 10vw;
        height: 4.5vw;
    }

    .service-intro-block {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 0;
        margin: 2vh auto;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .service-intro-image {
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        max-width: unset;
        width: 100%;
    }

    .service-intro-text {
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        width: 100%;
        margin-top: 2vh;
    }

    dl.service-detail-features {
        margin: 2vh auto 0;
    }


    .course-grid {
        -ms-grid-columns: unset;
        grid-template-columns: unset;
        gap: 0;
        margin-top: 3vh;
    }

    dl.course-recommend dd {
        padding: 1vh 3vw 2vh;
    }

    .course-details ul {
        padding: 2vh 0 4vh 8vw;
    }

    .s-price-table th,
    .s-price-table td {
        padding: 1vh 2vw;
        text-align: center;
    }

    .course-item,
    .service-intro-image img {
        -webkit-box-shadow: unset;
        box-shadow: unset;
    }

    dl.flow-list div {
        padding: 2vh 1vw 2vh 5.5vw;
        margin: 0 0 0 4vw;
    }

    .flow-list dt::before {
        left: -4vw;
        width: 8vw;
        height: 8vw;
    }

    .service-detail-section .inner,
    section#service-sales .inner,
    section#service-coating .inner,
    section.greeting .inner {
        padding: 5vh 0;
    }

    section.price-table-section.coating-price .flex-box a::after,
    .price-link a:after,
    section.top-service .link a::after {
        right: 3.5vw;
        width: .6em;
        height: .6em;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
    }

    .car-brand-wrap h4 {
        font-size: 4.5vw;
        padding-bottom: 1vh;
        border-bottom: 2px solid var(--color-main);
        margin-bottom: 2vh;
        text-align: center;
    }

    p.service-detail-copy {
        padding: 1vh 2vw;
    }

    .used-car-sales .img-wrap {
        width: 55%;
        margin: 3vh auto 2vh;
    }

    .swiper-pagination-bullet-active {
        background: #fff !important;
    }

    .swiper-container {
        width: 100%;
        overflow: hidden;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .swiper-slide {
        width: auto;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .swiper-wrapper {
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

    .swiper-slide {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 100% !important;
    }

    section.top-features {
        background-position: 37% top;
        background-attachment: unset;
    }

    .price-table-section .inner,
    section.history,
    section.company .inner {
        padding: 5vh 0;
    }

    .price-notes .inner,
    section.payment .inner {
        padding: 5vh 0 0;
    }

    .price-tables-wrap table {
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    }

    .faq-wrap {
        padding: 0;
    }

    .faq-list dt {
        padding: 2vh 2vw 2vh 7vw;
    }

    .faq-list dd {
        padding: 2vh 2vw 0 7vw;
    }

    .faq-list dt::before,
    .faq-list dd::before {
        left: 2vw;
    }

    section.greeting .flex-box.right .img-wrap.sp_block,
    section.greeting .flex-box.right .img-wrap.sp_block img {
        position: relative;
    }

    section.greeting .img-wrap.sp_block::before {
        content: "";
        position: absolute;
        top: 2vw;
        left: -2vw;
        width: 100%;
        height: 100%;
        background-image: -o-linear-gradient(178deg, #30429b, #00a7ff);
        background-image: linear-gradient(272deg, #30429b, #00a7ff);
        z-index: 0;
        border-radius: 1vw;
    }

    section.history dd {
        padding: 1.5vh 0;
    }

    section.history dt {
        padding: 2vh 0;
    }

    section.history dd:nth-child(n+3),
    section.history dt:nth-child(n+2),
    section.history dl {
        border-top: unset;
    }

    section.history dt {
        padding: 1.5vh 0;
        background: #f5f8fd;
    }

    section.history .history-list {
        border-bottom: unset;
    }

    section.history .logo {
        width: 73%;
        bottom: unset;
        top: 6vh;
        right: 0;
    }

    section.company td {
        text-align: center;
        padding: 1.5vh 3vw;
        border-top: unset;
        border-bottom: unset;
    }

    section.company th {
        padding: 1.5vh 2vw;
    }

    section.company table tr {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    section.company td:last-of-type {
        border-bottom: 1px solid #ccc;
    }

    section.page-mv {
        height: 25vh;
    }

    section.top-news.sp_block {
        background: #f5f8fd;
    }

    section.top-news.sp_block .inner {
        padding: 5vh 0;
        margin: 0 auto;
        width: 92%;
    }

    section.top-news .post-warp {
        background: #fff;
        border-radius: 1vw;
    }

    section.top-news .post-box a {
        display: block;
        width: 100%;
        padding: 1vh 3vw;
        margin-top: 3vh;
    }

    section.top-news .post-box a span.date {
        display: block;
        width: 100%;
        font-size: 3.2vw;
    }

    section.top-news .post-box a span.title {
        display: block;
        width: 100%;
        font-size: 3.8vw;
    }

    .news-contents {
        padding-right: 0;
    }

    .sidebar {
        flex: auto;
        min-width: 100%;
        width: 100%;
    }

    .article-tag a::before {
        width: 3.5vw;
        height: 2.5vh;
        margin-right: 1.5vw;
        top: 1.3vw;
    }

    .page-nav .prev-link,
    .page-nav .next-link {
        border: 1.5px solid #1982d6;
    }

    .page-nav .prev-link::before,
    .page-nav .next-link::before {
        top: -.9em;
        font-size: 4.5vw;
    }

    .page-container.news {
        padding: 5vh 0;
    }

    aside#sidebar h4 {
        border-bottom: 2px solid;
    }

    .fixed-page h2,
    .single article h2 {
        padding: 2vh 1vw 2vh 2vw;
        border-left: 1vw solid #1982d6;
    }

    .fixed-page h4::before,
    .single article h4::before {
        top: 4vw;
        width: 2.5vw;
        height: 2.5vw;
    }

    .fixed-page h4,
    .single article h4 {
        padding: 1vh 1.2vw 0 4vw;
    }

    .single .sale-detail .content ul,
    .single .single-text-wrap ul,
    .single .sale-detail ol,
    .single .single-text-wrap ol {
        padding: 3vh 1vw 3vh 8.5vw;
    }

    article.article-list {
        padding: 2vh 2vh;
    }

    .pagination ul li a,
    .pagination .current {
        padding: 0 2vw;
        font-size: 4.5vw;
    }

    .page-nav .prev-link,
    .page-nav .next-link {
        padding: 1vh 2vw;
    }

    .page-id-58 .faq-wrap {
        padding: 2vh 0;
    }

    .url-copied {
        bottom: -12vw;
        left: 74%;
    }

    section.history .history-list dt,
    section.history .history-list dd {
        border: 1px solid #ccc;
    }
	
	section.company table{
		border-top: 1px solid #ccc;
}

    section.history .history-list dd,
    section.history .history-list dt:nth-child(n+2),
    section.company th {
        border-top: unset;
    }

    section.company th:nth-child(n+2) {
        border-bottom: unset;
    }

    /* margin */

    section.faq-content .inner {
        margin: 5vh auto;
    }

    .service-page-nav .inner {
        margin: 5vh auto 0;
    }

    .flow-list {
        margin: 3vh auto;
    }

    section#service-coating .img-wrap img {
        margin: 1vh auto 2vh;
    }

    p.section-note,
    section.greeting .flex-box.right {
        margin: 0 auto;
    }

    .course-item:nth-child(n+2),
    .price-tables-wrap,
    section#maintenance-price .price-category table {
        margin-top: 5vh;
    }

    .page-nav .next-link {
        margin-top: 4vh;
    }

    .flex-box.right .img-wrap.sp_block,
    section.history .text-wrap p,
    section.company table {
        margin-top: 3vh;
    }

    section.top-about .text-wrap,
    .service-detail-features div:nth-child(n+2),
    .car-brand-wrap .flex-box:nth-child(n+2),
    section.price-table-section.coating-price .flex-box:nth-child(n+2),
    .archive.date aside#sidebar {
        margin-top: 3vw;
    }

    .service-page-nav ul li:nth-child(n+4),
    .flow-list dd {
        margin-top: 1vh;
    }

    section.page-mv {
        margin-top: 0;
    }


    .feature-item,
    section.top-contact h3 {
        margin-bottom: 5vw;
    }

    .feature-content .feature-title {
        margin-bottom: 3vw;
    }

    section.top-contact .flex-box.right .flex-box.tel {
        margin-bottom: 2vh;
    }

    div#block-9 ul {
        margin-left: 5.5vw;
    }

    .pagination ul li {
        margin-right: 2vw;
    }

    /* border-radius */
    section.top-about .img-wrap img {
        border-radius: 2vw;
    }

    .flex-box.mail a,
    .flex-box.line a,
    section.top-contact .flex-box.tel a,
    .service-page-nav ul li a,
    dl.flow-list div,
    section.greeting .flex-box.right .img-wrap.sp_block img {
        border-radius: 1vw;
    }

    .service-intro-image img {
        border-radius: 0;
    }

    /* width */

    section.top-about .flex-box.left,
    section.top-about .link a,
    section.top-service .link a,
    .feature-item,
    section.top-contact .flex-box.left,
    section.top-contact .flex-box.right,
    section.top-contact .flex-box.right .flex-box.tel,
    section.top-contact .flex-box.right .flex-wrap.sb,
    .service-detail-features div,
    .flow-list,
    .price-link a,
    .car-brand-wrap .flex-box,
    section.price-table-section.coating-price .flex-box,
    section.payment .img-wrap,
    section.history dt,
    section.history dd,
    section.company th,
    section.company td,
    header nav ul li.tel,
    .news-contents,
    .page-nav .prev-link,
    .page-nav .next-link {
        width: 100%;
    }

    section.top-about .flex-wrap,
    section.top-service .inner,
    section.top-features .inner,
    .service-page-nav .inner,
    .service-detail-section .inner,
    section#service-sales .inner,
    section#service-coating .inner,
    .price-table-section .inner,
    .price-notes .inner,
    section.payment .inner,
    section.faq-content .inner,
    section.greeting .flex-box.right,
    section.history .inner,
    section.company .inner {
        width: 92%;
    }

    .page-container.news {
        max-width: 92%;
    }

    .feature-content .feature-description {
        width: 85%;
    }

    .price-category tbody th {
        width: 70%;
    }

    .goo-pit img,
    .single article .share ul,
    .error404 main div a {
        width: 65%;
    }

    .footer_logo img {
        width: 70%;
    }

    .service-item,
    .flex-box.line,
    .flex-box.mail {
        width: 48%;
    }

    .service-page-nav ul li {
        width: 32.5%;
    }

    dl.flow-list::after {
        width: 3vw;
    }

    /* text-align */

    .type-wrap p,
    .fix-page.contents.service .text-wrap p,
    section.payment .text-wrap p,
    p.section-note {
        text-align: left;
    }

    .price-category h3,
    .fix-page.contents .price-notes h3,
    .price-category th,
    .price-category td,
    .price-category td:last-child,
    .price-category th:last-child,
    section.history dd, .service-details-content p.section-note {
        text-align: center;
    }

    .faq-list dt,
    .faq-list dd {
        text-align: justify;
    }

    /* line-height */

    .faq-list dt,
    .faq-list dd,
    section.company th {
        line-height: 1.8;
    }

    p.service-detail-copy,
    .flow-list dd,
    .flow-list dt,
    .mv-copy p.main-copy,
    section.company td {
        line-height: 1.6;
    }

    /* font-size */

    section.top-about .h2-wrap p,
    section.top-service .h2-wrap p,
    section.top-news .h2-wrap p,
    section.top-features .h2-wrap p,
    section.top-contact .h2-wrap p,
    section.top-contact .title-wrap p.en {
        font-size: 12vw;
    }

    section.top-contact .flex-box.tel a span.number {
        font-size: 9vw;
    }

    header nav ul li.tel a span.number {
        font-size: 8vw;
    }

    section.page-mv h1,
    .fix-page.contents .h2-wrap h2 {
        font-size: 6vw;
    }

    .mv-copy p.main-copy,
    .service-name,
    .feature-content .feature-title,
    section.top-contact h3,
    .flow-list dt::before,
    .price-category h3,
    .fix-page.contents .price-notes h3 {
        font-size: 5vw;
    }

    p.service-detail-copy,
    .service-details-content h3,
    .course-item h4,
    .flow-list dt,
    .price-category table caption,
    .faq-list dd::before,
    .faq-list dt::before,
    .single h1,
    .category h1,
    .date h1,
    .date h1,
    .single article .share p,
    .error404 main h2 {
        font-size: 4.5vw;
    }

    dl.course-recommend dt,
    .course-details h5,
    .s-price-table h5,
    .fixed-page h2,
    .single article h2,
    .category h1,
    .date h1,
    .date h1 {
        font-size: 4.3vw;
    }

    .single .sale-detail h3,
    .single .news-contents h3,
    article.article-list .text h2 {
        font-size: 4.2vw;
    }

    section.top-about .flex-box.left .text-wrap p,
    section.top-about .link a,
    section.top-service .link a,
    .feature-content .feature-description,
    .h1-wrap p,
    .service-page-nav ul li a,
    .fix-page.contents .h2-wrap p,
    .service-intro-text p,
    .service-detail-features dt,
    .service-detail-features dd,
    dl.course-recommend dd,
    .course-details li,
    .s-price-table th,
    .s-price-table td,
    p.section-note,
    .flow-list dd,
    .type-wrap p,
    .price-link a,
    .text-wrap p,
    .used-car-sales p,
    ul.faq-list.tick-list,
    .faq-wrap p,
    .price-category th,
    .price-category td,
    .price-category td:last-child,
    .price-category th:last-child,
    .price-notes .notes-list li,
    section.price-table-section.coating-price .flex-box a,
    .faq-list dt,
    .faq-list dd,
    section.greeting .text-wrap p,
    section.history .text-wrap p,
    section.history dd,
    section.history dt,
    section.company th,
    section.company td,
    .fixed-page .inner p,
    .single article p,
    aside#sidebar h4,
    .fixed-page h4,
    .single article h4,
    .fixed-page h5,
    .single article h5,
    .single .sale-detail .content ul li,
    .single .single-text-wrap ul li,
    .single .sale-detail .content ol li,
    .single .single-text-wrap ol li,
    .single .single-text-wrap td,
    .single .single-text-wrap td,
    .single .sale-detail td,
    .single .sale-detail td,
    .error404 main p,
    .error404 main div a {
        font-size: 4vw;
    }

    section.top-contact .flex-box.tel a span.time,
    div#latest_posts_widget-3 p.blog_title,
    div#block-7 ul li,
    div#block-9 ul li {
        font-size: 3.8vw;
    }

    .scroll a,
    .home div#contents h2,
    footer#footer p.invoice,
    .home div#contents h2,
    section.top-contact .title-wrap p.jp,
    .single article .article-tag ul li,
    .article-tag a,
    article.article-list .archive-text {
        font-size: 3.5vw;
    }

    .mv-copy p.sub-copy,
    header nav ul li.tel a span.time {
        font-size: 3.3vw;
    }

    .breadcrumb,
    .article-date,
    div#latest_posts_widget-3 p.post_date,
    .archive p.article-date,
    .page-nav .prev-link,
    .page-nav .next-link {
        font-size: 3vw;
    }

    span.cat-data a,
    .url-copied span {
        font-size: 2.6vw;
    }

    /*--------------------------------
スマホフッター固定バー
---------------------------------*/


    _::-webkit-full-page-media,
    _:future,
    :root ul.floating li {
        padding: 2vh 0 3vh;
    }

    _::-webkit-full-page-media,
    _:future,
    :root footer#footer .footer-inner {
        padding: 5vh 0 13vh;
    }

    ul.floating {
        background-image: -o-linear-gradient(182deg, rgb(48 66 155 / 90%), rgb(0 167 255 / 90%));
        background-image: linear-gradient(268deg, rgb(48 66 155 / 90%), rgb(0 167 255 / 90%));
        margin: 0 auto;
        overflow: hidden;
        display: table;
        table-layout: fixed;
        text-align: center;
        width: 100%;
        position: fixed;
        bottom: 0;
        left: 0;
        z-index: 10;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    ul.floating li {
        padding: 1.5vh 0;
        display: table-cell;
        border-right: 0.5px solid #fff;
        vertical-align: middle;
        width: 33.33%;
    }

    ul.floating li:last-child {
        border-right: none;
    }

    ul.floating li a,
    ul.floating li .hamburger-open {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        color: #fff;
        text-align: center;
        text-decoration: none;
        font-weight: 500;
        font-size: 0.85rem;
        line-height: 1.2;
        cursor: pointer;
        gap: 2px;
    }

    ul.floating li i,
    ul.floating li img {
        font-size: 1.2rem;
        height: 1.2em;
    }


    /*--------------------------------
ハンバーガーメニュー
---------------------------------*/

    header nav ul {
        display: unset;
    }


    nav#g-nav.globalMenuSp {
        position: fixed;
        z-index: 10000;
        top: 0;
        left: 0;
        width: 100%;
        min-height: 100%;
        background-image: -o-linear-gradient(177deg, rgb(48 66 155 / 90%), rgb(0 167 255 / 90%));
        background-image: linear-gradient(273deg, rgb(48 66 155 / 90%), rgb(0 167 255 / 90%));
        color: #fff;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
        transform: translateX(100%);
        -webkit-transition: -webkit-transform 0.3s ease-in-out;
        transition: -webkit-transform 0.3s ease-in-out;
        -o-transition: transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
    }


    nav#g-nav.active {
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
    }

    #g-nav-list {
        width: 80%;
    }

    .g-nav_inner,
    .g-nav_box {
        width: 100%;
        margin: 0 auto;
    }

    .g-nav_logo {
        width: 95%;
        margin: 0 auto 3vh;
    }

    #g-navi {
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }

    #g-navi li {
        padding: 1.2vh 0;
        width: 100%;
        text-align: center;
    }

    #g-navi li a {
        color: #fff;
        font-size: 4.5vw;
        text-decoration: none;
        letter-spacing: 2px;
        font-weight: 500;
    }

    .hamburger-close {
        margin-top: 2vh;
        font-size: 4.5vw;
        cursor: pointer;
        color: #fff;
        text-align: center;
    }


    #g-navi li.tel {
        background: #fff;
        border-radius: 1vw;
        margin: 1.5vh 0;
    }

    #g-navi li.tel a span.number {
        background: -webkit-gradient(linear, left top, right top, from(#30429b), color-stop(80%, #00a7ff));
        background: -o-linear-gradient(left, #30429b 0%, #00a7ff 80%);
        background: linear-gradient(90deg, #30429b 0%, #00a7ff 80%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
    }

    #g-navi li.tel a span.time {
        color: #333;
    }

    header nav ul li.tel a::before {
        margin-right: 2vw;
        width: 6vw;
        height: 6vw;
        background: url(https://car-shop-saito.com/wp-content/uploads/2025/04/tel-blue-circle2.svg) no-repeat center;
        top: .3vw;
    }
}




@media screen and (min-width: 767px) {

    ul.floating {
        display: none !important;
    }
}



/*---------------------------------------------------------
  i pad all portrait
  ---------------------------------------------------------*/
@media only screen and (min-device-width: 743px) and (max-device-width: 1024px) and (orientation: portrait) {

    .article-info {
        line-height: 1.8;
    }

    div#latest_posts_widget-3 ul li:nth-child(n+2) {
        border-top: 1px solid #333;
    }

    div#latest_posts_widget-3 ul li:last-of-type {
        border-bottom: 1px solid #333;
    }

    .url-copied {
        bottom: -5vw;
    }

    .flex-box.line a img,
    .flex-box.mail a img {
        width: 33%;
    }

    article.article-list {
        margin-bottom: 1.5vh;
        padding: 1.5vh 2vh;
    }

    .error404 main {
        min-height: 98vw;
    }

    /* height */
    .site-title-wrap a,
    .site-title-wrap,
    header nav ul,
    header {
        height: 6vh;
    }

    .gallery-item {
        height: 22vh;
    }

    section.page-mv {
        height: 15vh;
    }

    section.mv {
        height: 50vh;
    }

    .scroll {
        padding-top: 2.5px;
        height: 30px;
    }

    .article-tag a::before {
        top: 0;
        height: 1vw;
    }

    @-webkit-keyframes scroll {
        0% {
            height: 0;
        }

        100% {
            height: 20px;
        }
    }

    @keyframes scroll {
        0% {
            height: 0;
        }

        100% {
            height: 20px;
        }
    }

    /* top */

    div#side_btn a {
        top: 22%;
    }

    .faq-list dd::before {
        top: .9vh;
    }

    .faq-list dt::before {
        top: 0.8vh;
    }

    .fixed-page h4::before,
    .single article h4::before {
        top: 1.5vw;
    }

    /* padding */



    .mv-copy {
        padding: 2vh 0;
    }

    section.mv .news_box {
        padding: .8vh 1vw;
    }

    div#side_btn a {
        padding: 1vh .5vw;
    }

    section.mv {
        padding-top: 6vh;
    }

    .service-page-nav ul li a,
    p.service-detail-copy,
    .service-detail-features dt,
    .course-item h4,
    dl.course-recommend dt,
    .course-details h5,
    .s-price-table h5,
    .price-category table caption {
        padding: .5vh 0;
    }

    .single .single-text-wrap td,
    .single .single-text-wrap td,
    .single .sale-detail td,
    .single .sale-detail td {
        border: 1px solid #033059 !important;
        padding: .5vh 1vw;
    }

    .service-detail-section .inner,
    section.greeting .inner {
        padding: 5vh 0;
    }

    .service-detail-features dd {
        padding: .75vh 1vw;
    }

    .price-category th,
    .price-category td {
        padding: .75vh 1.5vw;
    }

    dl.course-recommend dd {
        padding: .5vh 1vw 2vh;
    }

    .course-details ul {
        padding: 1vh 0 2vh 2vw;
    }

    .s-price-table th,
    .s-price-table td {
        padding: 0.75vh 1.5vw;
    }

    dl.flow-list div {
        padding: 1vh 1vw 1vh 2.5vw;
    }

    section#service-sales .inner,
    section#service-coating .inner {
        padding: 5vh 0 2.5vh;
    }

    .faq-wrap,
    section.history dt,
    section.history dd {
        padding: 1.5vh 0;
    }

    section.price-table-section.coating-price .flex-box a {
        padding: .35vh 0;
    }

    section.payment .inner {
        padding: 3.5vh 0;
    }

    .faq-list dt {
        padding: 1vh 0 1vh 3vw;
    }

    .faq-list dd {
        margin-bottom: 2.5vh;
        padding: 1vh 1vw 0 3vw;
    }

    section.history,
    .page-container.news {
        padding: 3.5vh 0 5vh;
    }

    section.company th,
    section.company td {
        padding: 1vh 2vw;
    }

    .page-nav .next-link,
    .page-nav .prev-link {
        border: 1px solid #1982d6;
        padding: .5vh .7vw;
    }

    div#latest_posts_widget-3 ul li {
        padding: 0 .5vw .5vh;
    }

    .map {
        padding-top: 25%;
    }

    /* margin */

    section.faq-content .inner {
        margin: 5vh auto 1vh;
    }

    section.page-mv {
        margin-top: 6vh;
    }

    .mv-copy p.sub-copy:nth-child(n+2),
    article.article-list .archive-text {
        margin-top: .5vh;
    }

    section.payment .text-wrap,
    section.company table,
    div#block-7,
    div#block-9 {
        margin-top: 2.5vh;
    }

    .fixed-page h2,
    .single article h2 {
        margin: 2.5vh auto 1.5vh;
        padding: 1vh 1vw;
    }

    section.history .text-wrap p {
        margin-top: 2vh;
    }

    dl.flow-list div:nth-child(n+2),
    .price-notes .notes-list,
    section.greeting .text-wrap,
    section.history .history-list,
    .fixed-page .inner p,
    .single article p {
        margin-top: 1.5vh;
    }

    .single .sale-detail h3,
    .single .news-contents h3 {
        margin: 1.5vh auto;
        padding: .5vh .5vw;
    }

    .fixed-page h5,
    .single article h5 {
        margin: 1.5vh auto;
        padding: .5vh 0 0;
    }

    .fixed-page h4,
    .single article h4 {
        margin: 1.5vh auto;
        padding: .5vh 1.2vw 0;
    }

    .single .sale-detail .content ul,
    .single .single-text-wrap ul,
    .single .sale-detail ol,
    .single .single-text-wrap ol {
        margin: 1.5vh auto 2.5vh;
        padding: 1.5vh 1vw 1.5vh 2.5vw;
    }

    .service-detail-features div:nth-child(n+3),
    .faq-wrap p {
        margin-top: 1vh;
    }

    .service-page-nav .inner {
        margin: 3.5vh auto 0;
    }

    .price-table-section .inner,
    .price-notes .inner {
        padding: 3.5vh 0;
    }

    section.company .inner {
        padding: 3.5vh 0 5vh;
    }

    dl.service-detail-features,
    .price-link a,
    nav.page-nav {
        margin: 2.5vh auto 0;
    }

    .service-intro-block,
    .flow-list,
    section.payment .img-wrap {
        margin: 2.5vh auto;
    }

    .used-car-sales .img-wrap {
        margin: 2.5vh auto 1.5vh;
    }

    .service-detail-section .h2-wrap {
        margin-bottom: 1.5vh;
    }

    .course-grid {
        margin-top: 2.5vh;
        margin-bottom: 1.5vh;
    }

    .service-details-content h3 {
        margin-top: 2.5vh;
        margin-bottom: 1.25vh;
        padding: .5vh 0;
    }


    p.section-note {
        margin: 2vh auto;
    }

    section#service-insurance .img-wrap img {
        margin: 0 auto 1.5vh;
    }


    .goo-pit img {
        margin: 1.5vh auto 0;
    }

    .single .sale-detail .content figure,
    .single article figure {
        margin: 1.5vh 0;
    }

    .price-category {
        margin-bottom: 3vh;
    }

    .price-table-section .h2-wrap,
    .price-notes .h2-wrap {
        margin-bottom: 2vh;
    }

    .article-date {
        margin-bottom: 1.5vh;
    }

    .price-category table,
    aside#sidebar h4 {
        margin-bottom: 1vh;
    }

    .price-notes .notes-list li {
        margin-bottom: .5vh;
    }

    .single .sale-detail .content ol li,
    .single .single-text-wrap ol li,
    .single .sale-detail .content ul li,
    .single .single-text-wrap ul li {
        margin-bottom: .35vh;
    }

    section.greeting img.name {
        margin: 2vh 0 0 auto;
    }

    .share {
        margin-bottom: 3.5vh;
        margin-top: 1.5vh;
    }

    .single article .share ul {
        margin: .5vh auto 0;
    }


    /* border */
    .price-category h3,
    .fix-page.contents .price-notes h3 {
        border-bottom: 1.5px solid var(--color-main);
    }

    aside#sidebar h4 {
        border-bottom: 1.5px solid;
    }

    /* width */

    .page-container.news {
        max-width: 80%;
        min-height: 98vw;
    }

    .service-page-nav .inner,
    .service-detail-section .inner,
    section#service-sales .inner,
    section#service-coating .inner,
    .price-table-section .inner,
    .price-notes .inner {
        width: 80%;
    }

    section.faq-content .inner,
    section.company .inner,
    section.history .inner {
        width: 75%;
    }

    section.history .logo {
        width: 67%;
    }

    /* font-size */

    section.top-about .h2-wrap p,
    section.top-service .h2-wrap p,
    section.top-news .h2-wrap p,
    section.top-features .h2-wrap p,
    section.top-contact .h2-wrap p,
    section.top-contact .title-wrap p.en {
        font-size: 4.5vw;
    }

    section.top-contact .flex-box.tel a span.number {
        font-size: 2.4vw;
    }

    .mv-copy p.main-copy {
        font-size: 2.2vw;
    }

    header nav ul li.tel a span.number,
    section.page-mv h1 {
        font-size: 2.1vw;
    }

    .fix-page.contents .h2-wrap h2 {
        font-size: 2vw;
    }

    div#side_btn a.line span,
    .error404 main h2 {
        font-size: 1.8vw;
    }

    .flow-list dt::before {
        font-size: 1.7vw;
    }

    section.top-contact h3 {
        font-size: 1.6vw;
    }

    i.fas.fa-caret-square-right,
    .service-name,
    .feature-content .feature-title,
    .service-details-content h3,
    .single h1,
    .fixed-page h2,
    .single article h2,
    .category h1,
    .date h1,
    .date h1 {
        font-size: 1.5vw;
    }

    li.mv_i_news p,
    p.service-detail-copy,
    .car-brand-wrap h4,
    .price-category h3,
    .fix-page.contents .price-notes h3,
    section.price-table-section.coating-price .flex-box a,
    .single .sale-detail h3,
    .single .news-contents h3,
    .single article .share p {
        font-size: 1.4vw;
    }

    .h1-wrap p,
    .course-item h4,
    .faq-list dd::before,
    .faq-list dt::before,
    .fixed-page h4,
    .single article h4 {
        font-size: 1.3vw;
    }

    section.top-service .link a,
    .service-page-nav ul li a,
    .fix-page.contents .h2-wrap p,
    .service-detail-features dt,
    .flow-list dt,
    .price-link a,
    .fixed-page h5,
    .single article h5,
    .page-nav .prev-link::before,
    .page-nav .next-link::before,
    article.article-list .text h2,
    .pagination ul li a,
    .pagination .current,
    .error404 main p {
        font-size: 1.2vw;
    }

    .mv-copy p.sub-copy,
    .home div#contents h2,
    section.top-about .flex-box.left .text-wrap p,
    .feature-content .feature-description,
    .service-intro-text p,
    .service-detail-features dd,
    dl.course-recommend dt,
    .course-details h5,
    .s-price-table h5,
    p.section-note,
    .type-wrap p,
    .text-wrap p,
    .used-car-sales p,
    ul.faq-list.tick-list,
    .faq-wrap p,
    .price-category table caption,
    .faq-list dt,
    .faq-list dd,
    section.top-contact .title-wrap p.jp,
    section.greeting .text-wrap p,
    section.history .text-wrap p,
    section.history dt,
    section.history dd,
    section.company th,
    section.company td,
    .fixed-page .inner p,
    .single article p,
    .single .sale-detail .content ul li,
    .single .single-text-wrap ul li,
    .single .sale-detail .content ol li,
    .single .single-text-wrap ol li,
    .single .single-text-wrap td,
    .single .single-text-wrap td,
    .single .sale-detail td,
    .single .sale-detail td,
    aside#sidebar h4,
    .single article .article-tag ul li,
    .article-tag a,
    .error404 main div a {
        font-size: 1.1vw;
    }

    header nav ul li a {
        font-size: 1.05vw;
    }

    section.mv .news_box li,
    .scroll a,
    section.top-about .link a,
    footer#footer .add,
    footer#footer p.invoice,
    dl.course-recommend dd,
    .course-details li,
    .s-price-table th,
    .s-price-table td,
    .flow-list dd,
    .price-category th,
    .price-category td,
    .price-notes .notes-list li,
    div#latest_posts_widget-3 p.blog_title,
    div#block-7 ul li,
    div#block-9 ul li {
        font-size: 1vw;
    }

    section.top-contact .flex-box.tel a span.time,
    .article-date,
    article.article-list .archive-text {
        font-size: .9vw;
    }

    header nav ul li.tel a span.time,
    .copyright p,
    .breadcrumb,
    div#latest_posts_widget-3 p.post_date,
    .archive p.article-date {
        font-size: .8vw;
    }

    .page-nav .next-link,
    .page-nav .prev-link {
        font-size: .75vw;
    }

    .popular-badge,
    span.cat-data a,
    .url-copied span {
        font-size: .7vw;
    }
}


/*---------------------------------------------------------
  i pad all landscape
  ---------------------------------------------------------*/
@media only screen and (min-device-width: 744px) and (max-device-width: 1400px) and (orientation: landscape) {



    /* font-size */

    section.top-about .h2-wrap p,
    section.top-service .h2-wrap p,
    section.top-news .h2-wrap p,
    section.top-features .h2-wrap p,
    section.top-contact .h2-wrap p,
    section.top-contact .title-wrap p.en {
        font-size: 4.5vw;
    }

    section.top-contact .flex-box.tel a span.number {
        font-size: 2.4vw;
    }

    .mv-copy p.main-copy {
        font-size: 2.2vw;
    }

    header nav ul li.tel a span.number,
    section.page-mv h1 {
        font-size: 2.1vw;
    }

    .fix-page.contents .h2-wrap h2 {
        font-size: 2vw;
    }

    div#side_btn a.line span,
    .error404 main h2 {
        font-size: 1.8vw;
    }

    .flow-list dt::before {
        font-size: 1.7vw;
    }

    section.top-contact h3 {
        font-size: 1.6vw;
    }

    i.fas.fa-caret-square-right,
    .service-name,
    .feature-content .feature-title,
    .service-details-content h3,
    .single h1,
    .fixed-page h2,
    .single article h2,
    .category h1,
    .date h1,
    .date h1 {
        font-size: 1.5vw;
    }

    li.mv_i_news p,
    p.service-detail-copy,
    .car-brand-wrap h4,
    .price-category h3,
    .fix-page.contents .price-notes h3,
    section.price-table-section.coating-price .flex-box a,
    .single .sale-detail h3,
    .single .news-contents h3,
    .single article .share p {
        font-size: 1.4vw;
    }

    .h1-wrap p,
    .course-item h4,
    .faq-list dd::before,
    .faq-list dt::before,
    .fixed-page h4,
    .single article h4 {
        font-size: 1.3vw;
    }

    section.top-service .link a,
    .service-page-nav ul li a,
    .fix-page.contents .h2-wrap p,
    .service-detail-features dt,
    .flow-list dt,
    .price-link a,
    .fixed-page h5,
    .single article h5,
    .page-nav .prev-link::before,
    .page-nav .next-link::before,
    article.article-list .text h2,
    .pagination ul li a,
    .pagination .current,
    .error404 main p {
        font-size: 1.2vw;
    }

    .mv-copy p.sub-copy,
    .home div#contents h2,
    section.top-about .flex-box.left .text-wrap p,
    .feature-content .feature-description,
    .service-intro-text p,
    .service-detail-features dd,
    dl.course-recommend dt,
    .course-details h5,
    .s-price-table h5,
    p.section-note,
    .type-wrap p,
    .text-wrap p,
    .used-car-sales p,
    ul.faq-list.tick-list,
    .faq-wrap p,
    .price-category table caption,
    .faq-list dt,
    .faq-list dd,
    section.top-contact .title-wrap p.jp,
    section.greeting .text-wrap p,
    section.history .text-wrap p,
    section.history dt,
    section.history dd,
    section.company th,
    section.company td,
    .fixed-page .inner p,
    .single article p,
    .single .sale-detail .content ul li,
    .single .single-text-wrap ul li,
    .single .sale-detail .content ol li,
    .single .single-text-wrap ol li,
    .single .single-text-wrap td,
    .single .single-text-wrap td,
    .single .sale-detail td,
    .single .sale-detail td,
    aside#sidebar h4,
    .single article .article-tag ul li,
    .article-tag a,
    .error404 main div a {
        font-size: 1.1vw;
    }

    header nav ul li a {
        font-size: 1.05vw;
    }

    section.mv .news_box li,
    .scroll a,
    section.top-about .link a,
    footer#footer .add,
    footer#footer p.invoice,
    dl.course-recommend dd,
    .course-details li,
    .s-price-table th,
    .s-price-table td,
    .flow-list dd,
    .price-category th,
    .price-category td,
    .price-notes .notes-list li,
    div#latest_posts_widget-3 p.blog_title,
    div#block-7 ul li,
    div#block-9 ul li {
        font-size: 1vw;
    }

    section.top-contact .flex-box.tel a span.time,
    .article-date,
    article.article-list .archive-text {
        font-size: .9vw;
    }

    header nav ul li.tel a span.time,
    .copyright p,
    .breadcrumb,
    div#latest_posts_widget-3 p.post_date,
    .archive p.article-date {
        font-size: .8vw;
    }

    .page-nav .next-link,
    .page-nav .prev-link {
        font-size: .75vw;
    }

    .popular-badge,
    span.cat-data a,
    .url-copied span {
        font-size: .7vw;
    }
}




/*---------------------------------------------------------
 小型PC～中型PC
---------------------------------------------------------*/
@media screen and (min-width:1200px) and (max-width:1700px) {


    /* font-size */

    section.top-about .h2-wrap p,
    section.top-service .h2-wrap p,
    section.top-news .h2-wrap p,
    section.top-features .h2-wrap p,
    section.top-contact .h2-wrap p,
    section.top-contact .title-wrap p.en {
        font-size: 4.5vw;
    }

    section.top-contact .flex-box.tel a span.number {
        font-size: 2.4vw;
    }

    .mv-copy p.main-copy {
        font-size: 2.2vw;
    }

    header nav ul li.tel a span.number,
    section.page-mv h1 {
        font-size: 2.1vw;
    }

    .fix-page.contents .h2-wrap h2 {
        font-size: 2vw;
    }

    div#side_btn a.line span,
    .error404 main h2 {
        font-size: 1.8vw;
    }

    .flow-list dt::before {
        font-size: 1.7vw;
    }

    section.top-contact h3 {
        font-size: 1.6vw;
    }

    i.fas.fa-caret-square-right,
    .service-name,
    .feature-content .feature-title,
    .service-details-content h3,
    .single h1,
    .fixed-page h2,
    .single article h2,
    .category h1,
    .date h1,
    .date h1 {
        font-size: 1.5vw;
    }

    li.mv_i_news p,
    p.service-detail-copy,
    .car-brand-wrap h4,
    .price-category h3,
    .fix-page.contents .price-notes h3,
    section.price-table-section.coating-price .flex-box a,
    .single .sale-detail h3,
    .single .news-contents h3,
    .single article .share p {
        font-size: 1.4vw;
    }

    .h1-wrap p,
    .course-item h4,
    .faq-list dd::before,
    .faq-list dt::before,
    .fixed-page h4,
    .single article h4 {
        font-size: 1.3vw;
    }

    section.top-service .link a,
    .service-page-nav ul li a,
    .fix-page.contents .h2-wrap p,
    .service-detail-features dt,
    .flow-list dt,
    .price-link a,
    .fixed-page h5,
    .single article h5,
    .page-nav .prev-link::before,
    .page-nav .next-link::before,
    article.article-list .text h2,
    .pagination ul li a,
    .pagination .current,
    .error404 main p {
        font-size: 1.2vw;
    }

    .mv-copy p.sub-copy,
    .home div#contents h2,
    section.top-about .flex-box.left .text-wrap p,
    .feature-content .feature-description,
    .service-intro-text p,
    .service-detail-features dd,
    dl.course-recommend dt,
    .course-details h5,
    .s-price-table h5,
    p.section-note,
    .type-wrap p,
    .text-wrap p,
    .used-car-sales p,
    ul.faq-list.tick-list,
    .faq-wrap p,
    .price-category table caption,
    .faq-list dt,
    .faq-list dd,
    section.top-contact .title-wrap p.jp,
    section.greeting .text-wrap p,
    section.history .text-wrap p,
    section.history dt,
    section.history dd,
    section.company th,
    section.company td,
    .fixed-page .inner p,
    .single article p,
    .single .sale-detail .content ul li,
    .single .single-text-wrap ul li,
    .single .sale-detail .content ol li,
    .single .single-text-wrap ol li,
    .single .single-text-wrap td,
    .single .single-text-wrap td,
    .single .sale-detail td,
    .single .sale-detail td,
    aside#sidebar h4,
    .single article .article-tag ul li,
    .article-tag a,
    .error404 main div a {
        font-size: 1.1vw;
    }

    header nav ul li a {
        font-size: 1.05vw;
    }

    section.mv .news_box li,
    .scroll a,
    section.top-about .link a,
    footer#footer .add,
    footer#footer p.invoice,
    dl.course-recommend dd,
    .course-details li,
    .s-price-table th,
    .s-price-table td,
    .flow-list dd,
    .price-category th,
    .price-category td,
    .price-notes .notes-list li,
    div#latest_posts_widget-3 p.blog_title,
    div#block-7 ul li,
    div#block-9 ul li {
        font-size: 1vw;
    }

    section.top-contact .flex-box.tel a span.time,
    .article-date,
    article.article-list .archive-text {
        font-size: .9vw;
    }

    header nav ul li.tel a span.time,
    .copyright p,
    .breadcrumb,
    div#latest_posts_widget-3 p.post_date,
    .archive p.article-date {
        font-size: .8vw;
    }

    .page-nav .next-link,
    .page-nav .prev-link {
        font-size: .75vw;
    }

    .popular-badge,
    span.cat-data a,
    .url-copied span {
        font-size: .7vw;
    }
}


/*---------------------------------------------------------
 大型PC
---------------------------------------------------------*/

@media screen and (min-width:1920px) {

    section.top-contact .flex-box.right .flex-wrap.sb {
        width: 100%;
    }


    /* font-size */

    section.top-about .h2-wrap p,
    section.top-service .h2-wrap p,
    section.top-news .h2-wrap p,
    section.top-features .h2-wrap p,
    section.top-contact .h2-wrap p,
    section.top-contact .title-wrap p.en {
        font-size: 4.5vw;
    }

    section.top-contact .flex-box.tel a span.number {
        font-size: 2.4vw;
    }

    .mv-copy p.main-copy {
        font-size: 2.2vw;
    }

    header nav ul li.tel a span.number,
    section.page-mv h1 {
        font-size: 2.1vw;
    }

    .fix-page.contents .h2-wrap h2 {
        font-size: 2vw;
    }

    div#side_btn a.line span,
    .error404 main h2 {
        font-size: 1.8vw;
    }

    .flow-list dt::before {
        font-size: 1.7vw;
    }

    section.top-contact h3 {
        font-size: 1.6vw;
    }

    i.fas.fa-caret-square-right,
    .service-name,
    .feature-content .feature-title,
    .service-details-content h3,
    .single h1,
    .fixed-page h2,
    .single article h2,
    .category h1,
    .date h1,
    .date h1 {
        font-size: 1.5vw;
    }

    li.mv_i_news p,
    p.service-detail-copy,
    .car-brand-wrap h4,
    .price-category h3,
    .fix-page.contents .price-notes h3,
    section.price-table-section.coating-price .flex-box a,
    .single .sale-detail h3,
    .single .news-contents h3,
    .single article .share p {
        font-size: 1.4vw;
    }

    .h1-wrap p,
    .course-item h4,
    .faq-list dd::before,
    .faq-list dt::before,
    .fixed-page h4,
    .single article h4 {
        font-size: 1.3vw;
    }

    section.top-service .link a,
    .service-page-nav ul li a,
    .fix-page.contents .h2-wrap p,
    .service-detail-features dt,
    .flow-list dt,
    .price-link a,
    .fixed-page h5,
    .single article h5,
    .page-nav .prev-link::before,
    .page-nav .next-link::before,
    article.article-list .text h2,
    .pagination ul li a,
    .pagination .current,
    .error404 main p {
        font-size: 1.2vw;
    }

    .mv-copy p.sub-copy,
    .home div#contents h2,
    section.top-about .flex-box.left .text-wrap p,
    .feature-content .feature-description,
    .service-intro-text p,
    .service-detail-features dd,
    dl.course-recommend dt,
    .course-details h5,
    .s-price-table h5,
    p.section-note,
    .type-wrap p,
    .text-wrap p,
    .used-car-sales p,
    ul.faq-list.tick-list,
    .faq-wrap p,
    .price-category table caption,
    .faq-list dt,
    .faq-list dd,
    section.top-contact .title-wrap p.jp,
    section.greeting .text-wrap p,
    section.history .text-wrap p,
    section.history dt,
    section.history dd,
    section.company th,
    section.company td,
    .fixed-page .inner p,
    .single article p,
    .single .sale-detail .content ul li,
    .single .single-text-wrap ul li,
    .single .sale-detail .content ol li,
    .single .single-text-wrap ol li,
    .single .single-text-wrap td,
    .single .single-text-wrap td,
    .single .sale-detail td,
    .single .sale-detail td,
    aside#sidebar h4,
    .single article .article-tag ul li,
    .article-tag a,
    .error404 main div a {
        font-size: 1.1vw;
    }

    header nav ul li a {
        font-size: 1.05vw;
    }

    section.mv .news_box li,
    .scroll a,
    section.top-about .link a,
    footer#footer .add,
    footer#footer p.invoice,
    dl.course-recommend dd,
    .course-details li,
    .s-price-table th,
    .s-price-table td,
    .flow-list dd,
    .price-category th,
    .price-category td,
    .price-notes .notes-list li,
    div#latest_posts_widget-3 p.blog_title,
    div#block-7 ul li,
    div#block-9 ul li {
        font-size: 1vw;
    }

    section.top-contact .flex-box.tel a span.time,
    .article-date,
    article.article-list .archive-text {
        font-size: .9vw;
    }

    header nav ul li.tel a span.time,
    .copyright p,
    .breadcrumb,
    div#latest_posts_widget-3 p.post_date,
    .archive p.article-date {
        font-size: .8vw;
    }

    .page-nav .next-link,
    .page-nav .prev-link {
        font-size: .75vw;
    }

    .popular-badge,
    span.cat-data a,
    .url-copied span {
        font-size: .7vw;
    }
}