/*
Theme Name: ボディガード
Description: ボディガードのテーマ
Theme URI: http://mikawaanjo-coating.com/
Author: ROCKSTREAM
Author URI: http://www.rockstream-jp.com
Version: 1.0
License: GPL
License URI: https://www.gnu.org/copyleft/gpl.html
*/


@charset "utf-8";

/*---------------------
base
---------------------*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, p {  margin: 0; padding: 0;}

p{
}

li {
    list-style:none;
}
a {
    text-decoration: none;
    color: #333;
}
input{
    font-size: 14px;
    margin: 5px 0;
}

a:hover,
a:hover img,
input:hover {
    filter: alpha(opacity=80);
    -ms-filter :"alpha(opacity=80)";
    -moz-opacity:0.8;
    -webkit-opacity:0.8;
    opacity:0.8;
}


/* Reset
------------------------------------------------------------ */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, p {  margin: 0; padding: 0;}
body {
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display:block;
}
nav ul {
    list-style:none;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}
/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
input, select {
    vertical-align:middle;
}

table{
    border-collapse: collapse;
}

/* Common
------------------------------------------------------------ */
html {
    font-size: 100%;
    overflow-y: scroll;
    margin: 0;
    width: 100%;
}

body {
    position: relative;
    width: 100%;
    font-size: 14px;
    color:#f4f7ff;
    background:#151a28;
    font-family: 'メイリオ',Meiryo,"Hiragino kaku Gothic Pro","ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック",Osaka,sans-serif;
    -webkit-text-size-adjust: 100%;
    line-height: 1.7em;
}

a {
    color: #000;
    outline: medium none;
    overflow: hidden;
    text-decoration: none;
}

a:visited {
    outline: medium none;
}

a:focus {
    outline: medium none;
    overflow: hidden;
}

a:active, a:hover {
     outline: medium none;
}

a:hover {
}

/*---------------------
見出し
---------------------*/
h1{ font-weight: normal; font-size:100%;}
h2 { line-height: 1.5;}
h3 { line-height: 1.3;}
h3.en{font-size:30px;}
h3.jp{font-size:28px;line-height: 1.3;}
h4 {}
h5 {}
h6 {}

address a{
    color:#fff;
}

abbr[title] {
     border-bottom: 1px dotted;
}

b, strong {
     font-weight: bold;
}

dfn {
     font-style: italic;
}

mark {
     background: none repeat scroll 0 0 #FFFF00;
     color: #000000;
}

p {
     line-height: 1.7em;
}

code, kbd, pre, samp {
     -moz-hyphens: none;
     font-family: monospace,serif;
     font-size: 14px;
}

pre {
    background: none repeat scroll 0 0 #F5F5F5;
    color: #666666;
    font-family: monospace;
    font-size: 14px;
    margin: 20px 0;
    overflow: auto;
    padding: 20px;
    white-space: pre-wrap;
    word-wrap: break-word;
}

blockquote, q {
    -moz-hyphens: none;
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: none;
}

blockquote {
}

blockquote blockquote {
    margin-right: 0;
}

blockquote cite, blockquote small {
    font-size: 14px;
    font-weight: normal;
    text-transform: uppercase;
}

blockquote em, blockquote i {
    font-style: normal;
    font-weight: 300;
}

blockquote strong, blockquote b {
    font-weight: 400;
}

small {
    font-size: smaller;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

dl {
    margin: 0 0 30px;
}

dt {
    font-weight: bold;
    margin: 0 0 5px;
}

dd {
    margin: 0 0 5px;
}

menu, ol, ul {
    margin: 0;
    padding: 0;
}

ul {
    list-style-type: none;
}

img {
    width: 100%;
    height:auto;
    border: 0 none;
    vertical-align: middle;
}

.clear {
    clear: both;
}

/* Micro Clearfix */
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
    *zoom: 1;
}
.widget:before,
.widget:after{
    content: " ";
    display: table;
}
.widget:after{
    clear: both;
}

* { box-sizing: border-box; }

/*---------------------
Wrapper
---------------------*/
.contentWrp{
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
}
.halfWrp1 .floatL,
.halfWrp1 .floatR{
    width:50%;
}
.halfWrp2 .floatL,
.halfWrp2 .floatR{
    width:49%;
    max-width: 333px;
}
.halfWrp3 .floatL,
.halfWrp3 .floatR{
    width:49%;
    max-width: 357px;
}
.halfWrp4 .floatL{
    width:47%;
    max-width: 343px;
}
.halfWrp4 .floatR{
    width:50%;
    max-width: 365px;
}

.col1of3{
    width:calc(100%/3);
    float:left;
}

/*---------------------
Color
---------------------*/
.white{ color:#f4f7ff; }
.black{ color:#151a28; }
.gray{ color:#767676; }
.red{ color:#ff0000; }
.gold{ color:#d5b47a; }
.blue{ color:#0a2d96; }
.bgWht1{ background:#f4f7ff; }
.bgBlk1{ background:#151a28; }
.bgBlk2{ background:#0f131c; }
.bgBlue{ background:#0a2d96; }
.bgGry1{ background:#181f2f; }
.bgNone{ background: none; }
.ylLine {
    background-image: linear-gradient(transparent 40%, #fcff00 60%);
    display: inline;
}

/*---------------------
Margin Padding
---------------------*/
/* Margin
---------------------*/
.ma00{ margin:0  !important; }

/*** Margin - Top ***/
.mt00 { margin-top:0px   !important; }
.mt05 { margin-top:5px   !important; }
.mt10 { margin-top:10px  !important; }
.mt15 { margin-top:15px  !important; }
.mt20 { margin-top:20px  !important; }
.mt25 { margin-top:25px  !important; }
.mt30 { margin-top:30px  !important; }
.mt35 { margin-top:35px  !important; }
.mt40 { margin-top:40px  !important; }
.mt45 { margin-top:45px  !important; }
.mt50 { margin-top:50px  !important; }
.mt60 { margin-top:60px  !important; }
.mt100{ margin-top:100px !important; }
.mt200{ margin-top:200px !important; }
.mt300{ margin-top:300px !important; }

/*** Margin - Bottom ***/
.mb00 { margin-bottom:0px   !important; }
.mb05 { margin-bottom:5px   !important; }
.mb10 { margin-bottom:10px  !important; }
.mb15 { margin-bottom:15px  !important; }
.mb20 { margin-bottom:20px  !important; }
.mb25 { margin-bottom:25px  !important; }
.mb30 { margin-bottom:30px  !important; }
.mb35 { margin-bottom:35px  !important; }
.mb40 { margin-bottom:40px  !important; }
.mb45 { margin-bottom:45px  !important; }
.mb50 { margin-bottom:50px  !important; }
.mb60 { margin-bottom:60px  !important; }
.mb70 { margin-bottom:70px  !important; }
.mb80 { margin-bottom:80px  !important; }
.mb100{ margin-bottom:100px !important; }
.mb200{ margin-bottom:200px !important; }
.mb300{ margin-bottom:300px !important; }

/*** Margin - Left ***/
.ml00{ margin-left:0px  !important; }
.ml05{ margin-left:5px  !important; }
.ml10{ margin-left:10px !important; }
.ml15{ margin-left:15px !important; }
.ml20{ margin-left:20px !important; }
.ml25{ margin-left:25px !important; }
.ml30{ margin-left:30px !important; }
.ml35{ margin-left:35px !important; }
.ml40{ margin-left:40px !important; }
.ml45{ margin-left:45px !important; }
.ml50{ margin-left:50px !important; }

/*** Margin - Right ***/
.mr00{ margin-right:0px  !important; }
.mr05{ margin-right:5px  !important; }
.mr10{ margin-right:10px !important; }
.mr15{ margin-right:15px !important; }
.mr20{ margin-right:20px !important; }
.mr25{ margin-right:25px !important; }
.mr30{ margin-right:30px !important; }
.mr35{ margin-right:35px !important; }
.mr40{ margin-right:40px !important; }
.mr45{ margin-right:45px !important; }
.mr50{ margin-right:50px !important; }


/* Padding
---------------------*/
.pa00{ margin:0  !important; }

/*** Padding - Top ***/
.pt00{ padding-top:0px  !important; }
.pt05{ padding-top:5px  !important; }
.pt10{ padding-top:10px !important; }
.pt15{ padding-top:15px !important; }
.pt20{ padding-top:20px !important; }
.pt25{ padding-top:25px !important; }
.pt30{ padding-top:30px !important; }
.pt35{ padding-top:35px !important; }
.pt40{ padding-top:40px !important; }
.pt45{ padding-top:45px !important; }
.pt50{ padding-top:50px !important; }
.pt60{ padding-top:60px !important; }

/*** Padding - Bottom ***/
.pb00{ padding-bottom:0px  !important; }
.pb05{ padding-bottom:5px  !important; }
.pb10{ padding-bottom:10px !important; }
.pb15{ padding-bottom:15px !important; }
.pb20{ padding-bottom:20px !important; }
.pb25{ padding-bottom:25px !important; }
.pb30{ padding-bottom:30px !important; }
.pb35{ padding-bottom:35px !important; }
.pb40{ padding-bottom:40px !important; }
.pb45{ padding-bottom:45px !important; }
.pb50{ padding-bottom:50px !important; }
.pb60{ padding-bottom:60px !important; }
.pb70{ padding-bottom:70px !important; }
.pb80{ padding-bottom:80px !important; }

/*** Padding - Left ***/
.pl00{ padding-left:0px  !important; }
.pl05{ padding-left:5px  !important; }
.pl10{ padding-left:10px !important; }
.pl15{ padding-left:15px !important; }
.pl20{ padding-left:20px !important; }
.pl25{ padding-left:25px !important; }
.pl30{ padding-left:30px !important; }
.pl35{ padding-left:35px !important; }
.pl40{ padding-left:40px !important; }
.pl45{ padding-left:45px !important; }
.pl50{ padding-left:50px !important; }

/*** Padding - Right ***/
.pr00{ padding-right:0px  !important; }
.pr05{ padding-right:5px  !important; }
.pr10{ padding-right:10px !important; }
.pr15{ padding-right:15px !important; }
.pr20{ padding-right:20px !important; }
.pr25{ padding-right:25px !important; }
.pr30{ padding-right:30px !important; }
.pr35{ padding-right:35px !important; }
.pr40{ padding-right:40px !important; }
.pr45{ padding-right:45px !important; }
.pr50{ padding-right:50px !important; }

.fs10{ font-size: 10px; }
.fs12{ font-size: 12px; }
.fs13{ font-size: 13px; }
.fs14{ font-size: 14px; }
.fs16{ font-size: 16px; }
.fs18{ font-size: 18px; }
.fs20{ font-size: 20px; }
.fs22{ font-size: 22px; }
.fs24{ font-size: 24px; }
.fs25{ font-size: 25px; }
.fs26{ font-size: 26px; }
.fs28{ font-size: 28px; }
.fs30{ font-size: 30px; }
.fs32{ font-size: 32px; }
.fs34{ font-size: 34px; }
.fs35{ font-size: 35px; }
.fs36{ font-size: 36px; }
.fs38{ font-size: 38px; }
.fs40{ font-size: 40px; }
.fs48{ font-size: 48px; }
.fs50{ font-size: 50px; }
.fs58{ font-size: 58px; }
.fs60{ font-size: 60px; }
.fs70{ font-size: 70px; }

.strong,.bold{ font-weight: bold;}
.text_under{ text-decoration: underline;}

.overF { overflow: hidden;}
.floatL { float: left;}
.floatR {
    float: right;
    text-align: left;
}
.clearB { clear: both; }

.textC { text-align: center;}
.textL { text-align: left;}
.textR { text-align: right;}

.w-50 { max-width:125px; width: 21%;}
.w-100 { width: 100px;}
.w-120 { width: 120px;}
.w-300 { width: 300px;}

.w_auto img{
    width:auto;
}
.vMiddle{
    display: table-cell;
    vertical-align: middle;
}
.inlbl{
    display: inline-block;
    vertical-align: middle;
}

.lh1{ line-height: 1; }
.lh13{ line-height: 1.3; }
.lh15{ line-height: 1.5; }
.lh2{ line-height: 2; }

.dispnone{ display: none; }

.bitter{font-family: 'Bitter', serif;}
.bitterB{
    font-family: 'Bitter', serif;
    font-weight: bold;
}
.lato{font-family: 'Lato', sans-serif;}
.latoB{
    font-family: 'Lato', sans-serif;
    font-weight: bold;
}
.roboto{font-family: 'Roboto', sans-serif;}
.robotoB{
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
}

.bdG{
    position: relative;
    width:100%;
    height: 1px;
    margin-bottom:15px;
    background:#d5b47a;
    z-index: 1;
}
.bdG:after{
    position: absolute;
    content:"";
    top:0;
    width:10%;
    height: 1px;
    background: #fff;
    z-index: 2;
}

.photo img{
    border-radius: 5px;
}
.image img{
    border-radius:5px 5px 0 0;
}
.btn,.btn2{
    position: relative;
    padding:10px 30px 8px 25px;
    font-size: 16px;
    color:#0a2d96;
    cursor: pointer;
    border-radius:20px;
    line-height: 1;
}
.btn{
    background: #f4f7ff url(images/btn/btnArrow01.png) no-repeat 92% 50%;
}
.btn2{
    background: #0d9339 url(images/btn/btnArrow01.png) no-repeat 92% 50%;
}
.btn a,.btn2 a{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
}
.btn:hover{
    background:#d5b47a url(images/btn/btnArrow01.png) no-repeat 92% 50%;
    transition: .3s;
}
.btn2:hover{
    background:#767676 url(images/btn/btnArrow01.png) no-repeat 92% 50%;
    transition: .3s;
}
.btn span{
    margin-right: 10px;
}
.mailBtn .icon img{
    width:auto;
}
.bdr5{ border-radius:5px;}
.bdr20{ border-radius: 20px; }

/* hover指定 */
.linkImg1,
.linkImg2{
    position: relative;
}
.linkImg1 a{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
}
.linkImg1 a:hover:after,
.linkImg2 a:hover:after{
    content:'';
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
    background:rgba(0,0,0,0.6);
}
.linkImg2 a:hover{
    border:5px solid #000;
}
.linkImg2 a:hover img{
    margin:-0.5px;
}

.iconBox{
    width:200px;
    padding:5px 0;
    color:#333;
    background: #fff;
    border:1px solid #d9d9d9;
    border-radius: 20px;
}

ul.col4 li{
    float:left;
    width:25%;
}
ul.flex{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

/*---------------------
header
---------------------*/
header {
	width: 100%;
    height:126px;
}

 #header {
    position: fixed;
    z-index: 1001;
}

#hdUpper{
    position: relative;
    min-height: 40px;
}
#hdUpper h1{
    width:70%;
    padding:10px 20px;
}
#hdUpper .hdUpperR{
    position:absolute;
    top:10px;
    right:2%;
    max-width: 190px;
}
#hdUpper .hdUpperR a{
    color:#fff;
    text-decoration: underline;
}
#hdLower{
    position: relative;
    height: 90px;
}
#hdLower .logoArea{
    position: absolute;
    top:5px;
    left:2%;
    width:230px;
}
#header .telArea{
    position: absolute;
    top:6px;
    right: 550px;
    width:310px;
}
#header .telArea .icon .smp{
    display: none;
}
#hdLower table{
    position: absolute;
    top:6px;
    right: 180px;
    width:335px;
    height: 76px;
}
#hdLower table td{
    width:50%;
    vertical-align: middle;
    border-right:1px solid #151a28;
    border-bottom:1px solid #151a28;
}
#hdLower table td.right{
    padding:0 5%;
    line-height: 1.3;
}
#header .contact span.pc{
    position: absolute;
    top:6px;
    right:2%;
    width: 130px;
    height: 76px;
    padding-top:15px;
    text-align: center;
    color:#fff;
    background: #0a2d96;
    border:1px solid #fff;
    cursor: pointer;
}
/* #header .contact a{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
} */
#header .contact span:hover{
    color:#0a2d96;
    background: #fff;
}
#header .contact span.smp{
    display:none;
}

.telArea .icon{
    margin-right: 5px;
}
.telArea .num{
    line-height: 0.8;
}
.telArea .num a{
    color:#f4f7ff;
}
#contents .telArea p.bitterB{
    line-height: 1;
}


/*---------------------
nav
---------------------*/
.navi_button{
    display: none;
}
button {
    width: auto;
    padding:0;
    margin:0;
    background:none;
    border:0;
    font-size:0;
    line-height:0;
    overflow:visible;
    cursor:pointer;
    outline:none;
}
button img {
    display: block;
    outline:none;
}
button::-moz-focus-inner {
    padding: 0;
    border: none;
}
button:active{
    border:none;
}

.g_naviWrap {
    height:78px;
    border-top:1px solid #d9d9d9;
    border-bottom:1px solid #d9d9d9;
}
.g_navi{
}
.g_navi ul{
    margin: 0 auto;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
}
.g_navi li.menu{
    width:calc(100%/6);
    height: 76px;
    padding-top:15px;
    text-align: center;
    border-left:1px solid #d9d9d9;
}
.g_navi li:hover{
    box-shadow: 0px -3px #0a2d96 inset;
    -webkit-box-shadow: 0px -3px #0a2d96 inset;
    -moz-box-shadow: 0px -3px #0a2d96 inset;
}
.g_navi li a{
    height: auto;
    display: flex;
    padding: 10px 0;
    font-size: 120%;
    align-items: center;
    justify-content: space-between;
}

@media screen and (-webkit-min-device-pixel-ratio:0){
    .g_navi li.menu{
        padding-bottom:12px;
    }
}
.g_navi .smp,
.g_navi .menu2{
    display: none;
}

/*---------------------
loader
---------------------*/
#loader {
	width: 100%;
	height: 100%;
	margin: 0;
	background: #fff;
	opacity: 1.0;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10000;
}
#loader img {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -40px;
	margin-left: -40px;
    width:auto;
}

/*---------------------
topimage
---------------------*/
#mainImage{
    position: relative;
    width:100%;
    top:0;
    margin:0 auto;
    z-index: 1;
}
#topImage .contentWrp{
    position: absolute;
    top:0;
    left:0;
    right:0;
    max-width:1000px;
    width:96%;
    height: 100%;
    z-index: 5;
}
#topImage .title{
    position: absolute;
    bottom:10%;
    left:0;
    max-width:606px;
    width:70%;
    z-index:10;
}
#topImage .bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 40%;
    width: 78px;
    height: 36px;
    outline: 0 none;
    /* text-indent: -9999px; */
    z-index: 9999;
}

.mainTitleImg img{
    height:auto;
    width:100%;
}

#mainImage{
    position: relative;
    width:100%;
    top:0;
    margin:0 auto;
    z-index: 1;
}
.mainTitleImg{
    position: relative;
}
.mainTitleImg .contentWrp{
    position: absolute;
    top:0;
    left:0;
    right:0;
    max-width:1000px;
    margin:auto;
    height: 100%;
}
.mainTitle{
    position: relative;
    top:25%;
    max-width:1000px;
    width:100%;
    margin:auto;
    z-index:100;
}
.mainTitle h2{
    max-width: 695px;
    width:70%;
}

/*---------------------
footer
---------------------*/
footer {
    position: relative;
	width: 100%;
    height:auto;
}
footer a{
    color:#fff;
}
footer .upper{
    margin-bottom:15px;
    padding-bottom:10px;
    border-bottom:1px solid #d5b47a;
}
footer #info{
    width: 310px;
}
footer #info .logo{
    width:295px;
    margin-right: 10px;
}
footer #info .address{
    width:245px;
}
footer #info .btn{
    max-width:300px;
}
#ftSitemap{
    width:630px;
}
#ftSitemap h2{
    margin-bottom:20px;
}
#ftSitemap ul{
    margin-bottom:15px;
}
#ftSitemap li{
    float:left;
    width:25%;
}
#ftSitemap li:before{
    content:"●";
    margin-right: 5px;
    font-size:10px;
    color:#d5b47a;
}
#ftSitemapS{
    display: none;
}

footer .bgWht1{
    width:100%;
    padding:25px;
}
footer .bgWht1 span{
    display: inline-block;
    margin-right: 8px;
}

/* Footer Copyright */
.copyright {
    padding:10px;
    text-align: center;
    font-size:12px;
    font-style: normal;
    color:#fff;
    background:#0a2d96;
}
.copyright a{
    color:#fff;
}

/*---------------------
上に戻るボタン
---------------------*/
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index:100;
}
#page-top a {
    display: block;
    width: 64px;
    height:70px;
    cursor: pointer;
}
#page-top a:hover {
    text-decoration: none;
}

/*---------------------
Container
---------------------*/
#container {
    width: 100%;
    margin:auto;
    position: relative;
}

/*---------------------
main
---------------------*/
#main{
    position: relative;
}

/*---------------------
Contents
---------------------*/
#contents{
    position: relative;
}

/*---------------------
レイアウト
---------------------*/
#mainLeft{
    float:left;
    width: 730px;
}
#sidebar{
    position: relative;
    float:right;
    width:240px;
    z-index: 100;
}

/*---------------------
Side
---------------------*/
#sidebar h2 span{
    display: block;
}
#sidebar h2 span img{
    width:164px;
}
#sidebar .sideBox,
#sideCase{
    padding:25px 0;
    border-top:1px solid #d5b47a;
    border-bottom:1px solid #d5b47a;
}

#sidebar .sideBox li{
    position: relative;
    padding:15px 10px;
    background: url(images/btn/btnArrow02.png) no-repeat 95% 50%;
    border-bottom:1px dotted #b2b2b2;
}
#sidebar .sideBox li:first-child{
    border-top:1px dotted #b2b2b2;
}
#sidebar .sideBox li a{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
}
#sidebar .sideBox li:hover{
    color:#fff;
    background: #d5b47a url(images/btn/btnArrow02.png) no-repeat 95% 50%;;
}
#sidebar .sideBox li span{
    display: block;
}

#sidebar .sideBox p{
    padding:0 2%;
}
#sidebar .btn{
    max-width: 220px;
    width: 96%;
    padding-left:40px;
}

/*---------------------
Bread Navi
---------------------*/
.breadcrumb{
    margin-bottom:35px;
    padding: 12px 0 0;
}
.breadcrumb a{
    color:#fff;
    text-decoration:underline;
}
.breadcrumb a:hover{

}
.breadcrumb li{
    display: inline;
}

/*---------------------
Pege共通
---------------------*/
#contents p{ line-height: 1.9; }
h2 img{
    width:200px;
}
h2 span{
    display: inline-block;
    vertical-align: baseline;
}

h3.title{
    padding-left:70px;
    text-indent: -35px;
    background: url(images/common/h3line.png) no-repeat left 45%;
    line-height: 1.5;
}
h4.title{
    margin-bottom:20px;
    padding-bottom:5px;
    border-bottom:1px solid #d9d9d9;
}

/* コーティングバナー */
.coatingMenu .menuBox{
    padding:20px;
}
.coatingMenu .menuBox ul{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}
.coatingMenu .menuBox .linkImg1 > div ,
.coatingMenu .glassC .linkImg1 > div {
    height: 100%;
    padding: 5px;
    border-radius: 6px;
    background-color: #000;
}
.coatingMenu .menuBox .linkImg1 > div.ttl {
    background-color: #0A2D96;
}
.coatingMenu .glassC .linkImg1 > div {
    background-color: #F4F7FF;
}
.coatingMenu .menuBox .linkImg1 a ,
.coatingMenu .glassC .linkImg1 a {
    position: static;
}
.coatingMenu .menuBox .linkImg1 > div p {
    text-align: center;
    color: white;
    font-size: 80%;
    line-height: 1.2 !important;
}
.coatingMenu .menuBox .linkImg1 > div.ttl p {
    width: 100%;
    height: 100%;
    display: flex;
    border: 1px solid white;
    border-radius: 4px;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
    font-weight: bold;
}
.coatingMenu .glassC ul{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}
.coatingMenu .glassC .linkImg1 > div .grasslink {
    display: block;
    border: 1px solid #0A2D96;
    border-radius: 4px;
    padding: 1.5rem 0 .5rem;
}
.coatingMenu .glassC .linkImg1 > div .nen {
    padding: 0.8rem 2rem;
    color: white;
    background-color: #0a2d96;
    border-radius: 7px;
}
.coatingMenu .glassC .linkImg1 > div .price {
    font-size: 80%;
    font-weight: bold;
    line-height: 1.4 !important;
}
.coatingMenu .glassC .linkImg1 > div .price span {
    font-size: 1.5rem;
}

.flow .box{
    padding:25px 20px;
    border-radius: 5px;
}
.flow #flow03.box{
    padding-bottom:10px;
}
.flow .box h3{
    font-size:20px;
    line-height: 1;
}
.flow .box h3 span{
    display: inline-block;
    vertical-align: middle;
}
.flow .box h3 .num{
    width:25px;
    margin-right: 18px;
    padding-bottom:3px;
    font-family: 'Bitter', serif;
    border-bottom:1px solid #d5b47a;
}
.flow .box li{
    float:left;
    width:220px;
    margin-right: 15px;
}
.flow #flow03.box li{
    margin-bottom:15px;
}
.flow .box li:nth-child(3){
    margin-right: 0;
}
.flow #carfilm03_04.box h3{
    line-height: 1.3;
}

.coatingItem .titArea{
    position: relative;
    margin-bottom:20px;
}
.coatingItem .titArea h2 span{
    display: block;
}
.coatingItem .titArea .icon{
    display: block;
    padding:8px 12px;
    color:#fff;
    background: #0a2d96;
    line-height: 1;
    border-radius: 5px;
}

.bgWht1.check{
    padding:35px 55px 15px;
    color:#0a2d96;
}
.bgWht1.check li{
    margin-left:1em;
    margin-bottom:18px;
    padding-left:1em;
    text-indent: -1.3em;
    font-size: 18px;
    line-height: 1.3;
}
.bgWht1.check li:before{
    content: url(images/icon/iconCheck1.png);
    margin-right: 15px;
    display: inline-block;
    vertical-align: middle;
}
.bgWht1.checkS{
    padding:20px 15px 1px;
    color:#0a2d96;
}
.bgWht1.checkS li{
    margin-left: 1em;
    margin-bottom:18px;
    padding-left:1em;
    text-indent: -0.8em;
    line-height: 1.3;
}
.bgWht1.checkS li:before{
    content: url(images/icon/iconCheck2.png);
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
}
.bgWht1.atten{
    padding:20px 40px;
}
.bgWht1.atten h3:before{
    content: url(images/icon/iconAtten.png);
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
}

.priceArea h4{
    margin-bottom:15px;
    padding-bottom:1px;
    border-bottom:1px solid #d9d9d9;
}

.btn.carclass{
    width:210px;
    margin:0 auto 40px;
}
.btn.carclass.open_tit.active {
    background:#333 url(images/btn/btnUp2.png) no-repeat 90% 50%;
}
.btn.carclass.open_tit {
    background:#333 url(images/btn/btnDown2.png) no-repeat 90% 50%;
}

table.col1,
table.col2,
table.col3,
table.col4,
table.col6{
    width:100%;
    margin-bottom:5px;
    border-top:1px solid #151a28;
    border-left:1px solid #151a28;
}
table.col1 th,
table.col1 td{
    width:100%;
    padding:13px 0;
    text-align: center;
    border-bottom:1px solid #151a28;
    border-right:1px solid #151a28;
}
table.col2 th,
table.col2 td{
    width:50%;
    padding:13px 0;
    text-align: center;
    border-bottom:1px solid #151a28;
    border-right:1px solid #151a28;
}
table.col3 th,
table.col3 td{
    padding:13px 0;
    text-align: center;
    border-bottom:1px solid #151a28;
    border-right:1px solid #151a28;
}
table.col3 tbody th{
    width:40%;
}
table.col3 tbody td{
    width:30%;
}
table.col4 th,
table.col4 td{
    padding:13px 0;
    text-align: center;
    border-bottom:1px solid #151a28;
    border-right:1px solid #151a28;
}
table.col4 tbody th{
    width:37%;
}
table.col4 tbody td{
    width:21%;
}

table.col2 thead th,
table.col3 thead th,
table.col4 thead th{
    color:#fff;
    background:#0a2d96;
}
table.col2 tbody th,
table.col3 tbody th,
table.col4 tbody th,
table.col6 th{
    color: #151a28;
    background:#e5e8f2;
    line-height: 1.2;
}
table.col3 tbody th span,
table.col4 tbody th span{
    font-size:80%;
}
table.col6 th,
table.col6 td{
    width:16.66%;
    padding:13px 0;
    text-align: center;
    border-bottom:1px solid #dedede;
    border-right:1px solid #dedede;
}
table.col1 td,
table.col2 td,
table.col3 td,
table.col4 td,
table.col6 td{
    color: #151a28;
    background:#f4f7ff;
}

.dispTb{
    display: table;
}
.dispTb span{
    display:table-cell;
    vertical-align: middle;
}

/*---------------------
トップページ
---------------------*/
#top01 .floatL{
    width:383px;
}
#top01 .floatR{
    width: 317px;
}
#top01 .floatL .btn{
    width:350px;
    margin:auto;
}
#top02 .btn ,
#top03 .btn{
    width:22em;
    margin:auto;
}
#top04 .bgWht1{
    padding: 25px;
    color:#151a28;
}
#top04 .bgWht1 ul{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
#top04 .bgWht1 li{
    max-width:330px;
    width:49%;
}

/*---------------------
磨き
---------------------*/
#polish01 .floatL{
    width:400px;
}
#polish01 .floatR{
    width:317px;
}
#polish01 ul li{
    display: inline-block;
    margin-right: 8px;
    padding:5px 10px;
    background: #0a2d96;
    border-radius: 5px;
    line-height: 1;
}
#polish02 .box,
#polish03 .box{
    padding:20px;
    border-radius: 3px;
}

/*---------------------
コーティング
---------------------*/
#coating03 .bgWht1 .halfWrp2{
    padding:20px;
}
#coating03_01 ul.bnr1{
    max-width:470px;
    width:100%;
    margin:auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
#coating03_01 ul.bnr1 li{
    max-width: 144px;
    width: 32%;
}
#coating03_01 ul.bnr2{
    max-width: 480px;
    width:100%;
    margin:auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
#coating03_01 ul.bnr2 li{

}
#coating03_01 ul.bnr2 li.title{
    width:160px;
    height: 30px;
    margin-top:20px;
    padding:10px 0;
    text-align: center;
    color: #fff;
    background:#0a2d96;
    border-radius:5px;
    line-height: 1;
}

/*---------------------
サイドメニュー
---------------------*/
#servicemenu00 li{
    float:left;
    width:165px;
    margin-right:20px;
    margin-bottom:20px;
    text-align: center;
}
#servicemenu00 li .linkImg2{
    margin-bottom:8px;
    position: relative;
    cursor: pointer;
}
#servicemenu00 li .linkImg2 a{
    position: absolute;
    width:100%;
    height: 100%;
    top:0;
    left: 0;
}
#servicemenu00 li:nth-child(4){
    margin-right: 0;
}
#servicemenu02 ul.flex{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
#servicemenu02 ul.flex li{
    width:49%;
}
#servicemenu02 ul.flex li .floatL{
    width:163px;
    margin-right: 10px;
}
#servicemenu02 ul.flex li .floatR{
    width:175px;
}
#servicemenu03 .dreamcoat .floatL{
    max-width:393px;
    width:54%;
}
#servicemenu03 .dreamcoat .floatR{
    max-width:320px;
    width:44%;
    padding-top:15px;
}
#servicemenu03 .movie{
    max-width:640px;
    width:100%;
    margin:auto;
}

/*---------------------
クリーニング
---------------------*/
#cleaning01 .col4 li p.gold{
    text-align: center;
}
#cleaning01 .col4 li p{
    padding:10px;
}
#cleaning01_03 h3.title1 span{
    display: inline-block;
    vertical-align: top;
}
#cleaning01_03 h3.title1 span.line{
    margin-right: 10px;
}
#cleaning01_03 h3.title1 span.line img{
    width: auto;
}
#cleaning01_03 p.floatL{
    width: 490px;
}
#cleaning01_03 .floatR{
    width: 217px;
}
#cleaning01_03 .bottom{
    position: relative;
}
#cleaning01_03 .bottom p{
    position: absolute;
    bottom:0;
    width:100%;
    padding:15px 0;
    background: rgba(0,0,0,0.7);
    line-height: 1;
}
#cleaning02_01 .floatL{
    width: 365px;
}
#cleaning02_01 .floatR{
    width: 343px;
}
.cleanBox{
    margin-bottom:25px;
    padding-bottom:15px;
    border-bottom:1px solid #6b6b6b;
}
#cleaning02_03 ul.menu li{
    float:left;
    width: 178px;
    height: 50px;
    margin-right:6px;
    margin-bottom:6px;
    text-align: center;
    display: table;
    color:#0a2d96;
    background:#f4f7ff;
    border-radius: 5px;
}
#cleaning02_03 ul.menu li:nth-child(4n){
    margin-right: 0;
}
#cleaning02_03 ul.menu li span{
    display: table-cell;
    vertical-align: middle;
    line-height: 1.3;
}
#cleaning03_01 .halfWrp1 .floatR{
    max-width:343px;
    width:90%;
}
h4.tit2{
    padding:15px 10px;
    text-align:center;
    color:#151a28;
    background:#e5e8f2;
    line-height: 1;
}
#cleaning03_02 h4.tit2{
    margin-bottom:4px;
}
#cleaning03_02 .box1{
    padding-bottom:25px;
    border-bottom:1px solid #6b6b6b;
}
#cleaning03_02 .box1.bdNone{
    padding-bottom:0;
    border-bottom:none;
}
#cleaning03_02 .floatR.bgWht1{
    display: table;
    padding:0 30px;
}

/*---------------------
カーフィルム
---------------------*/
#carfilm01_01.bgWht1,
#carfilm01_02.bgWht1 .inner,
#carfilm02 .bgWht1{
    padding:30px;
}
#carfilm01_01 .catch{
    position: relative;
    display: inline-block;
    margin:0 auto 30px;
    padding:10px 15px;
    line-height: 1;
}
#carfilm01_01 .catch:before{
    position:absolute;
    width:0;
    height:0;
    border-color:#0a2d96 transparent transparent;
    border-width:10px;
    border-style:solid;
    bottom:-20px;
    left:45%;
    content: " ";
}
#carfilm01_02.bgWht1 .inner p{
    color:#151a28;
}
#carfilm01_02 .border{
    width:100%;
    height: 1px;
    background:#151a28;
}
#carfilm01_02 h3.title{
    margin-bottom:12px;
    color:#0a2d96;
}
#carfilm01_02 .inner .floatL{
    width:313px;
}
#carfilm01_02 .inner .floatR{
    width:340px;
}
#carfilm02 .flex li{
    text-align: center;
}
#carfilm02 .flex li img{
    margin-bottom:5px;
}
#carfilm02 .flex li p{
    line-height: 1.3;
}
#carfilm03.flow .floatL{
    width:400px;
}
#carfilm03.flow .floatR{
    width:270px;
}
#carfilm03_04 .flex li{
    max-width:338px;
    width:49%;
}

/*---------------------
メンテナンス
---------------------*/


/*---------------------
店舗情報
---------------------*/
#company01 .flex li{
    width:31%;
    padding:15px;
    text-align: center;
    color:#0a2d96;
    background:#f4f7ff;
    border-radius: 5px;
}
#company01 .bgWht1{
    padding:30px;
}
#company01 .bgWht1 .floatL{
    width:313px;
}
#company01 .bgWht1 .floatR{
    width:330px;
}
#company02 table{
    width: 100%;
}
#company02 table th,
#company02 table td{
    padding:15px 30px;
    vertical-align: top;
}
#company02 table th{
    width: 27.5%;
    background:#e5e8f2;
    border-right:1px solid #151a28;
    border-bottom:1px solid #151a28;
}
#company02 table td{
    width: 72.5%;
    background: #f4f7ff;
    border-bottom:1px solid #151a28;
}
#company04 .bgBlk2{
    padding:10px;
}
#company04 .makerList li {
    float: left;
    max-width: 80px;
    width: calc(100%/9);
    margin: 0 -1px -1px 0;
    padding: 2px;
    text-align: center;
    background: #fff;
    border: 1px solid #d9d9d9;
}

/*---------------------
問い合わせ
---------------------*/
/* #contact{} */
#contact .stepBox ul li{
    max-width: 175px;
    width:24%;
    padding:10px 0 15px;
    background:#f4f7ff;
    border-radius:5px;
}
#contact .stepBox .stepArea{
    margin-bottom:8px;
    padding-left:17%;
}
#contact .stepBox .stepArea span{
    display: inline-block;
    vertical-align: middle;
}
#contact .stepBox .stepArea span.step{
    width:55px;
    margin-right: 20px;
    padding:3px;
    text-align: center;
    color:#fff;
    background: #0a2d96;
    line-height: 1;
    border-radius:5px;
}
#contact .stepBox p{
    padding:0 5%;
    line-height: 1.5;
}
#contact .bgWht1{
    padding:25px 5%;
}

.c-cform{
    width:100%;
    margin-bottom:40px;
    border-top:1px solid #f4f7ff;
}
.c-cform th{
    width:30%;
    padding:15px;
    font-weight: bold;
    text-align: left;
    border-bottom:1px solid #f4f7ff;
}
.c-cform th.vTop{
    padding-top:20px;
    vertical-align: top;
}
.c-cform th.c-cform__type,
.c-cform td.c-cform__type{
    padding:10px 15px;
}
.c-cform td{
    border-bottom:1px solid #f4f7ff;
}
.c-cform th span.red{
    color:#ff0000;
    font-size:90%;
    font-weight: normal;
}
.c-cform td{
    width:70%;
    padding:15px 30px;
}
.c-cform .w80{
    width:80%;
    padding:5px;
    background: #f4f7ff;
    border-radius: 5px;
}
.c-cform input[type="file"]{
    font-size:95%;
}
.c-cform__consent{
    text-align: center;
    margin-bottom:30px;
}
.c-cform__consent a{
    color:#f4f7ff;
    text-decoration:underline;
}
.c-cform__consent input{
    margin-right: 10px;
}

input.btn{
    width:240px;
    margin:auto;
    padding:15px 0;
    cursor:pointer;
    box-shadow: 0;
    border:1px solid #333;
}
input.btn:hover{
    border:1px solid #d5b47a;
}
input.btn_contact_return{
    margin:0 10px;
}
#inquiry .c-cform__consent{
    margin-bottom: 20px;
}
#inquiry .privacy{
    margin-bottom:30px;
}
#inquiry .c-cform__consent span.agree{
    color:#ff0000;
    text-decoration: underline;
}

input.btn_contact_return{
    margin:0 10px;
}
.c-cform__consent .textLink{
    display: inline-block;
}


/* プライバシーポリシー */

#privacypolicy .txt01 {
  margin-bottom: 30px;
}

#privacypolicy h3 {
  margin-top: 30px;
}

#privacypolicy ul li {
  padding-left: 20px;
  list-style: disc;
  list-style-position: inside;
}


/*---------------------
スクロールバー
---------------------*/
#scrollbar1 {
    width:98%;
    height: 680px;
    padding:40px 30px;
    clear: both;
}
#scrollbar1 .scrollbar{
    position: relative;
    float: right;
    width: 10px;
}
#scrollbar1 .viewport {
    width: 95%;
    height: 620px;
    overflow: hidden;
    position: relative;
}
#scrollbar1 .overview {
    list-style: none;
    position: absolute;
    left: 0;
    top: 0;
    width:100%;
}
#scrollbar1 .thumb .end,
#scrollbar1 .thumb{
    background-color: #0a2d96;
}
#scrollbar1 .track{
    background-color: #f4f7ff;
    width: 5px;
    position: relative;
    padding: 0;
}
#scrollbar1 .thumb {
    width: 5px;
    cursor: pointer;
    overflow: hidden;
    position: absolute;
    top: 0;
}
#scrollbar1 .thumb .end{
    overflow: hidden;
    height: 5px;
    width: 5px;
}
#scrollbar1 .disable {
    display: none;
}

/*---------------------
サイド/トップ修理事例
---------------------*/
#topCaseS{
    display: none;
}
#sideCase ul{
    margin-bottom:30px;
}
#sideCase li.archivePost{
    position: relative;
    max-width:240px;
    margin-bottom:10px;
}
#sideCase li .photo{
    position: relative;
}
#sideCase li .photo img{
    border-radius: 0;
}
#sideCase li.archivePost a{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
    z-index:3;
}
#sideCase li .archiveContents{
    position: absolute;
    bottom:0;
    left:0;
    width:100%;
    padding:5px 0;
    color:#fff;
    background: rgba(0,0,0,0.7);
    opacity: 0.8;
    z-index: 2;
}

.archiveContents .sort span,
#caseDetail .sort span{
	display: inline-block;
    float:left;
    margin:0 2px;
	padding: 6px 10px 5px;
    font-size: 12px;
	text-align: center;
    border-radius:5px;
    line-height: 1;
}
.archiveContents .sort span{
    color:#fff;
    background:#000;
}
#caseDetail .sort span{
    background:#d8d8d8;
}

.case .btn{
    width: 250px;
    padding:20px 0 20px;
    margin:auto;
    text-align: center;
}

#topCase .h2titArea{
    margin-bottom:40px;
}

/*---------------------
事例一覧
---------------------*/
.caseList .menuArea .case01 li{
    max-width: 140px;
    width: 19%;
    padding:10px 0;
    text-align:center;
    font-size:16px;
    font-weight:bold;
    color:#0a2d96;
    background:#f4f7ff;
    border-radius:20px;
    cursor:pointer;
}
.caseList .menuArea .case01 li.current,
.caseList .menuArea .case01 li:hover,
.caseList .menuArea .case02 li.current,
.caseList .menuArea .case02 li:hover{
    color:#f4f7ff;
    background:#0a2d96;
}
.menuArea li{
    position: relative;
    cursor: pointer;
}
.menuArea li a{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
}
.case02 li{
    display: inline-block;
    width: auto;
    margin-right: 5px;
    margin-bottom:10px;
    padding:8px 20px;
    text-align: center;
    color:#0a2d96;
    background:#f4f7ff;
    border-radius:20px;
    line-height: 1;
}
.caseList .menuArea .case02 li.current,
.caseList .menuArea .case02 li.first{
    margin-right: 0;
}

.caseList li.archivePost {
    float: left;
    max-width:333px;
    width:33%;
    margin-right:0.5%;
    margin-bottom:5px;
    padding:12px 10px;
}
.caseList li.archivePost:nth-child(3n){
    margin-right: 0;
}
.caseList li.archivePost h3{
    margin-bottom:20px;
    font-weight: normal;
}
.caseList li .btn{
    max-width: 180px;
    width:90%;
    margin:auto;
    padding:5px 10px;
    text-align: center;
    font-size:100%;
    line-height: 1;
}

/*---------------------
実績詳細
---------------------*/
.caseDetail{}
.caseDetail .inner{
    max-width: 730px;
    width:100%;
    margin:auto;
}
.caseDetail ul.subImg{
}
.caseDetail ul.subImg li{
    float:left;
    max-width: 138px;
    width:19%;
    margin-right: 1.25%;
}
.caseDetail ul.subImg li:nth-child(5){
    margin-right: 0;
}
.caseDetail table{
    width: 100%;
}
.caseDetail table th{
    width:18%;
    padding:10px;
    text-align: left;
    font-weight: normal;
    border-bottom:1px dotted #f4f7ff;
}
.caseDetail table td{
    width: 82%;
    padding:10px 10px 10px 0;
    border-bottom:1px dotted #f4f7ff;
}
.caseDetail table td.cate span{
    display: inline-block;
    margin-right: 5px;
    padding:5px 10px;
    color:#0a2d96;
    background:#f4f7ff;
    border-radius:20px;
    line-height: 1;
}
.caseDetail .bgBlk2{
    padding:30px;
}

.faq .contactArea,
.caseDetail .contactArea{
    max-width: 680px;
    width: 100%;
    margin:0 auto 70px;
}
.faq .contactArea .telArea,
.caseDetail .contactArea .telArea{
    float:left;
    width:330px;
}
.faq .contactArea .btn.contact,
.caseDetail .contactArea .btn.contact{
    width:330px;
    margin-top:10px;
    padding:12px 30px;
    font-size:14px;
    border-radius: 30px;
}
.faq .contactArea .btn.contact img,
.caseDetail .contactArea .btn.contact img{
    width: auto;
}
.faq .contactArea .btn.contact span,
.caseDetail .contactArea .btn.contact span{
    display: inline-block;
    text-align: left;
    vertical-align: middle;
    line-height: 1.3;
}
.caseDetail .btn.return{
    width:220px;
    margin:auto;
    padding:10px 0;
    background: #f4f7ff url(images/btn/btnArrow03.png) no-repeat 10% 50%;
}

.returnArea .btn.return{
    margin:auto;
    padding:14px 0 13px;
    background: #f4f7ff url(images/btn/btnArrow03.png) no-repeat 10% 50%;
    line-height: 1;
}
.returnArea .btn.return:hover{
    background: #d5b47a url(images/btn/btnArrow03.png) no-repeat 10% 50%;
}
.returnArea ul.link{
    padding-top:10px;
    border-top:1px solid #e3e3e3;
}
.returnArea ul.link a{
    color:#f4f7ff;
}

/*---------------------
News
---------------------*/
#topNews{
    position: relative;
    height: auto;
}
#topNews .btn,
#topNewsS .btn{
    position: absolute;
    top:70px;
    right: 0;
    width:160px;
}
.newsList li{
    padding:25px 20px;
    border-bottom:1px dashed #6b6b6b;
}
.newsList .date{
    margin:0 20px 0 5px;
}
.newsList .cate span{
    display: inline-block;
    margin-top:3px;
    margin-right: 10px;
    padding:3px 10px;
    background:#0a2d96;
    line-height: 1;
    border-radius: 5px;
}
.newsList p.robotoB{
    margin-bottom:5px;
}
.newsList h4{
    font-weight: bold;
}

#newsList .newsBox{
    margin-bottom:30px;
    padding-bottom:30px;
    border-bottom:1px solid #b2b2b2;
}
#newsList .newsBox a{
    color:#f4f7ff;
}
#newsList .newsBox .photo{
    float:left;
    width:230px;
}
#newsList .newsBox .photo img{
    border-radius:0;
}
#newsList .newsBox .newsData{
    float:right;
    width:460px;
}
#newsList .newsBox .newsData .newsContent{
    word-break: break-all;
}
#newsList .newsBox h3{
    padding-bottom:5px;
    font-size:18px;
    border-bottom:1px dotted #f4f7ff;
}
#newsList .pager.bottomPager{
    margin-bottom:60px;
}
#newsDetail .bgBlk2{
    padding:30px;
}
#newsDetail .btn.return{
    width:350px;
}


#newsDetail .freeeditor h1 {
	text-align: left;
	font-size: 140%;
	font-weight: bold;
	border-bottom: 3px solid #e8e7e3;
	padding-bottom: 5px;
	margin-bottom: 20px;
}

#newsDetail .freeeditor h2 {
	text-align: left;
	border: none;
	font-size: 130%;
	font-weight: bold;
	border-bottom: 2px solid #e8e7e3;
	padding-left: 0;
	padding-bottom: 5px;
	margin-bottom: 20px;
}

#newsDetail .freeeditor h3 {
	text-align: left;
	font-size: 120%;
	font-weight: bold;
	border-bottom: 1px solid #e8e7e3;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

#newsDetail .freeeditor h4 {
	text-align: left;
	font-size: 110%;
	font-weight: bold;
	margin-bottom: 10px;
}

#newsDetail .freeeditor h5 {
	text-align: left;
	font-weight: bold;
	margin-bottom: 10px;
}

#newsDetail .freeeditor p {
  margin-bottom: 5px;
}

#newsDetail .freeeditor strong {
	font-weight: bold;
}

#newsDetail .freeeditor img.alignright { display: block; margin: 0 0 0 auto; }/* 配置位置 右 */

#newsDetail .freeeditor img.alignleft { display: block; margin: 0 auto 0 0; }/* 配置位置 左 */

#newsDetail .freeeditor img.aligncenter { display: block; margin: 0 auto; }/* 配置位置 中央 */

#newsDetail .freeeditor img {
  width: auto;
  max-width: 100%;
  height: auto;
}

/*---------------------
よくある質問
---------------------*/
#faq{
    position: relative;
}
#faq .btn{
    position: absolute;
    top:20px;
    right: 0;
    width:160px;
}
#faq li:first-child{
    border-top:1px dashed #b2b2b2;
}
#faq li{
    padding:25px 10px 15px;
    border-bottom:1px dashed #b2b2b2;
}
#faq li a{
    color:#fff;
}
#faq h4{
    background: url(images/btn/btnArrow02.png) no-repeat 95% 50%;
    cursor: pointer;
}
#faq h4 span{
    display: inline-block;
    width:83%;
    vertical-align: middle;
}
#faq h4:before{
    content:url(images/icon/iconQ.png);
    display: inline-block;
    vertical-align: middle;
    margin-right:10px;
}
#faq dl{
    margin:0;
}
#faq dt,
#faq dd{
    float:left;
}
#faq dt{
    width: 35px;
}
#faq dt img{
    width:25px;
}
#faq dd{
    width:95%;
}
#faq h4.open_tit.active {
    background:url(images/btn/btnUp.png) no-repeat 96% 50%;
}
#faq h4.open_tit {
    background:url(images/btn/btnDown.png) no-repeat 96% 50%;
}

/*---------------------
Pager
---------------------*/
.pager::before, .pager::after {
    content: " ";
    display: table;
}
.pager::after {
    clear: both;
}
.pager::before, .pager::after {
    content: " ";
    display: table;
}
.pager {
    position: relative;
}
.pager.topPager{
}
.pager.bottomPager{
    padding-top:40px;
}
.pager span.pager_num {
}
.pager div.pager_num {
    display:inline-block;
    text-align:center;
    margin:0 auto;
}
.pager .pager_num span,
.pager .pager_num a {
    display: block;
    float:left;
    width:28px;
    height: 28px;
    margin:0 3px;
    padding: 7px;
    text-align: center;
    font-size:90%;
    color:#0a2d96;
    background: #eff1f8;
    border:1px solid #eff1f8;
    border-radius: 24px;
    line-height: 1;
}
.pager .pager_num span.current,
.pager .pager_num a:hover{
    color:#eff1f8;
    background: #0a2d96;
    border:1px solid #0a2d96;
    opacity: 1;
}

/*---------------------
レスポンシブ対応
---------------------*/
@media screen and (max-width: 1350px){

}
@media screen and (max-width: 1300px){
    #header .telArea{
        right:520px;
    }
}
@media screen and (max-width: 1200px){
    #hdUpper h1{
        font-size:80%;
    }
}

@media screen and (max-width: 1100px){
    #hdLower table{
        display: none;
    }
    #header .telArea{
        right:165px;
    }
}

@media screen and (max-width: 999px) {
    .fs16{ font-size: 14px; }
    .fs24{ font-size: 22px; }
    .fs26{ font-size: 24px; }
    .fs28{ font-size: 24px; }
    .fs30{ font-size: 26px; }
    .fs38{ font-size: 30px; }
    .fs40{ font-size: 36px; }
    .fs50{ font-size: 46px; }
    .catchArea h2.catch{ font-size: 100%; top: -10px; }

    .contentWrp{
        width: 96%;
    }
    footer #info.floatL,
    #ftSitemap.floatR{
        float:none;
        width:100%;
    }
    footer #info{
        max-width: 650px;
        width:100%;
        margin:auto;
        padding-bottom:20px;
    }
    footer #info .upper,
    footer #info .lower{
        display: inline-block;
        vertical-align: top;
        width:48%;
    }
    footer .upper{
        margin-right:2%;
        padding-top:5px;
        border-bottom:none;
    }
    footer #info .logo{
        width: auto;
        max-width: 295px;
    }
    /* #topImage .bx-wrapper .bx-controls-direction a{
        display:none;
    } */
    #mainLeft{
        width:74%;
    }
    #sidebar{
        width:25%;
    }
    #sidebar .sideBox li{
        font-size:13px;
        background: url(images/btn/btnArrow02.png) no-repeat 98% 50%;
    }

    /* page */
    .flow .box li,
    .flow .box li:nth-child(3){
        width:32%;
        margin: 0 0.5%;
    }
    #top01 .floatL,
    #top01 .floatR{
        width:49%;
    }
    #top01 .floatL .btn{
        max-width: 310px;
        width:90%;
    }
    #polish01 .floatL,
    #polish01 .floatR{
        width:49%;
    }
    #polish01 .floatR{
        max-width: 317px;
    }
    .coatingItem .titArea{
        height: auto;
    }
    .coatingItem .titArea .icon{
        float:none;
        display: inline-block;
        position: absolute;
        top:0;
        right:0;
    }
    .coatingItem .titArea .floatL{
        padding-top:40px;
    }
    .coatingItem .titArea .bnr{
        width:120px;
        margin-bottom:10px;
    }
    #servicemenu00 li{
        width:24%;
        margin-right: 1%;
    }
    #servicemenu02 ul.flex li .floatL,
    #servicemenu02 ul.flex li .floatR{
        width:49%;
        margin-right: 0;
    }
    #servicemenu03 .dreamcoat .floatR{
        padding-top:0;
    }
    #cleaning01 .col4 li p.gold{
        font-size: 12px;
    }
    #cleaning01_03 p.floatL{
        float:none;
        width:100%;
    }
    #cleaning01_03 .floatR{
        margin:0 0 10px 10px;
    }
    #cleaning02_01 .floatL,
    #cleaning02_01 .floatR{
        width:49%;
    }
    #cleaning02_03 ul.menu li{
        width:24%;
        margin-right: 1%;
    }
    #carfilm01_01 li{
        width:49%;
    }
    #carfilm01_02 .inner .floatL,
    #carfilm01_02 .inner .floatR,
    #carfilm02 .floatL,
    #carfilm02 .floatR{
        width:49%;
    }
    #carfilm02 ul.flex li{
        width:24%;
    }
    #carfilm03.flow .floatL{
        float:none;
        width:100%;
    }
    #carfilm03.flow .floatR{
        width:37%;
        margin:0 0 5px 10px;
    }
    #maintenance01 li{
        width:31%;
    }
    #contact .bgWht1 .floatL{
        margin:0 10px 10px 0;
    }
    #contact .bgWht1 .floatR{
        float:none;
        width:100%;
    }
    #company01 .flex li.fs18{
        font-size:14px;
    }
    #company01 .bgWht1 .floatL{
        width:43%;
        margin:0 10px 1px 0;
    }
    #company01 .bgWht1 .floatR{
        float:none;
        width:100%;
        margin-bottom:20px;
    }

    /* case faq news */
    .caseList .menuArea .case01 li{
        font-size:14px;
    }
    .faq .contactArea .telArea, .caseDetail .contactArea .telArea,
    .faq .contactArea .btn.contact, .caseDetail .contactArea .btn.contact{
        width:48%;
    }
    .faq .contactArea .btn.contact, .caseDetail .contactArea .btn.contact{
        max-width:330px;
        margin-top:10px;
        padding:10px 20px;
        font-size:13px;
    }
    .faq .contactArea .icon,
    .caseDetail .contactArea .icon{
        width:20px;
    }
    .faq .contactArea .num.fs36,
    .caseDetail .contactArea .num.fs36{
        font-size: 34px;
    }
    #newsList .newsBox .photo{
        width:32%;
    }
    #newsList .newsBox .newsData{
        width:66%;
    }
}

@media screen and (max-width: 812px) {
    body{ font-size:13px; }

    .mt50{ margin-top: 25px !important; }
    .mb15{ margin-bottom:10px !important; }
    .mb20{ margin-bottom:15px !important; }
    .mb25{ margin-bottom:15px !important; }
    .mb30{ margin-bottom:20px !important; }
    .mb40{ margin-bottom: 20px !important; }
    .mb50{ margin-bottom: 25px !important; }
    .mb70,.mb60{ margin-bottom: 30px !important; }
    .mb80{ margin-bottom: 40px !important; }
    .mb100{ margin-bottom: 40px !important; }
    .pt40{ padding-top:20px !important; }
    .pt50{ padding-top:25px !important; }
    .pt60{ padding-top:25px !important; }
    .pb20{ padding-bottom:15px !important; }
    .pb40{ padding-bottom:20px !important; }
    .pb50{ padding-bottom:25px !important; }
    .pb60{ padding-bottom:25px !important; }
    .pb70{ padding-bottom:30px !important; }
    .pb80{ padding-bottom:40px !important; }

    .fs13{ font-size:12px; }
    .fs18{ font-size:16px; }
    .fs20{ font-size: 16px; }
    .fs22{ font-size: 20px; }
    .fs24{ font-size: 20px; }
    .fs26{ font-size: 22px; }
    .fs28{ font-size: 22px; }
    .fs30{ font-size: 24px; }
    .fs36{ font-size: 26px; }
    .fs38{ font-size: 26px; }
    .fs40{ font-size: 32px; }
    .fs50{ font-size: 40px; }
    .flow .box h3{font-size:18px;}

    .breadcrumb{
        margin-bottom:20px;
        padding:10px 0 0;
        font-size:12px;
    }
    .btn{ font-size:14px; }
    #page-top a{
        width: 50px;
    }

    #header{
        height: auto;
    }
    #hdUpper{
        height: 0;
    }
    #hdLower{
        height: 80px;
    }
    #hdLower .logoArea{
        top:10px;
    }
    #hdLower .logoArea .address{
        display: none;
    }
    #header .telArea{
        top:20px;
        width:260px;
        right: 170px;
    }
    .telArea .icon img{
        width: 20px;
    }
    #header .telArea p.fs12{
        display: none;
    }
    #header .telArea .num{
        margin-bottom:5px;
    }
    #header .contact{
        right: 80px;
        width: 90px;
        height: 60px;
        padding-top:10px;
    }
    .mainTitle{
        top:15%;
    }

    /* Navi */
    .navi_button{
        position: absolute;
        top:0;
        right:0;
        z-index:200;
        margin: 16px 0;
        width: 50px;
        height: 50px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        grid-gap: 3px;
        cursor: pointer;
        background-color: #fff;
    }

    .navi_button .bar {
        width: 34px;
        height: 1px;
        background-color: #000;
        display: block;
        transition: 0.3s;
    }

    .navi_button.open .bar {
        position: absolute;
        top: -18px;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        transform: rotate(15deg);
    }

    .navi_button.open .bar:nth-child(2) {
        transform: rotate(-15deg);
    }

    .navi_button.open .bar:nth-child(3) {
        transform: scale(0);
    }

    .navi_button .txt {
        width: 100%;
        margin-top: 6.5px;
        font-size: 10px;
        text-align: center;
        display: block;
    }

    .navi_button.open .txt--menu {
        display: none;
    }

    .navi_button .txt--close {
        display: none;
    }

    .navi_button.open .txt--close {
        display: block;
        position: absolute;
        bottom: 15px;
        left: 0;
    }


    button img{
        width:68px;
    }
    .g_naviWrap{
        display: none;
        position: absolute;
        top:85px;
        right: 0;
        width: 100%;
        height: auto;
        margin:0;
        padding:0;
        z-index: 400;
        background: #fff;
        border-bottom: none;
    }
    .g_navi{
        position:relative;
        height: auto;
        padding:0;
        z-index:200;
    }
    .g_navi ul{
        display: block;
        width: 100%;
        height: auto;
    }
    .g_navi li.menu{
        float: none;
        width:100% !important;
        height: auto;
        padding:0;
        border-right: none;
        border-bottom:1px solid #d9d9d9;
    }
    .g_navi li.menu p.bitter{
        display: none;
    }
    .g_navi li a{
        height:auto;
        padding:10px 0;
        font-size: 120%;
    }
    .g_navi li:hover{
        box-shadow: none;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
    }
    .g_navi li.menu2{
        display: block;
        text-align: center;
    }
    .g_navi .smp{
        display: block;
        width:100% !important;
        height: auto;
        padding:0;
        text-align: center;
        border-bottom:1px dotted #d9d9d9;
    }
    .g_navi .smp a{
        padding:8px 0;
        font-size: 90%;
    }

    #mainLeft{
        float:none;
        width:100%;
    }
    #sidebar{
        display: none;
    }

    /* page */
    h2 img {
        width: 180px;
    }
    .bgWht1.check {
        padding: 20px 35px 5px;
    }
    .bgWht1.check li{
        font-size:16px;
    }
    #carfilm01_01.bgWht1, #carfilm01_02.bgWht1 .inner, #carfilm02 .bgWht1{
        padding:20px;
    }
    #carfilm02 .flex li p{
        font-size:10px;
    }
    .bgWht1.atten {
        padding: 15px 30px;
    }
    #contact .bgWht1{
        padding:20px;
    }
    #scrollbar1{
        width: 80%;
        margin:auto;
    }
    #company01 .bgWht1{
        padding:20px;
    }
    #company01 .flex li{
        width:32%;
        padding:10px 5px;
    }

    /* case */
    #topCaseS{
        display: block;
    }
    #topCaseS ul{
        max-width: 610px;
        width: 100%;
        margin:auto;
    }
    #topCaseS li.archivePost{
        float:left;
        position: relative;
        max-width:300px;
        width:49%;
        margin:0 0.5% 10px;
    }
    #topCaseS li .photo{
        position: relative;
    }
    #topCaseS li .photo img{
        border-radius: 0;
    }
    #topCaseS li.archivePost a{
        position: absolute;
        top:0;
        left:0;
        width:100%;
        height: 100%;
        z-index:3;
    }
    #topCaseS li .archiveContents{
        position: absolute;
        bottom:0;
        left:0;
        width:100%;
        padding:5px 0;
        color:#fff;
        background: rgba(0,0,0,0.7);
        opacity: 0.8;
        z-index: 2;
    }
    #topCaseS .btn{
        width:180px;
        margin:10px auto 0;
    }
    .caseDetail .bgBlk2{
        padding:20px;
    }
    .caseDetail table td.cate span{
        font-size: 12px;
    }
    .faq .contactArea, .caseDetail .contactArea {
        max-width: 680px;
        width: 100%;
        margin: 0 auto 40px;
    }
    .faq .contactArea .num.fs36,
    .caseDetail .contactArea .num.fs36{
        font-size: 26px;
    }
    #newsList .newsBox h3{
        font-size: 16px;
    }
    #newsDetail .bgBlk2{
        padding:20px;
    }
    #newsDetail .btn.return{
        width:270px;
    }
}

@media screen and (max-width: 670px){
    #header .telArea{
        width:230px;
    }
}

@media screen and (max-width: 641px) {
    #header .telArea{
        width:23px;
        top:10px;
        right: 140px;
    }
    .telArea .icon img{
        width: 23px;
    }
    #header .telArea p{
        display: none;
    }
    #header .telArea .icon .smp{
        display: block;
    }
    #header .telArea .icon .pc{
        display: none;
    }
    #header .contact .smp{
        display: block;
    }
    #header .contact{
        width:38px;
        height: 25px;
        background: none;
        border:none;
    }
    #header .contact .pc{
        display: none;
    }
    #header .contact span.smp{
        display: block;
    }
    button img{
        width:60px;
    }
    /* .g_naviWrap{
        top:60px
    } */

    #ftSitemap li{
        width: 33%;
    }
    footer .bgWht1{
        padding:15px;
    }

    /* page */
    .halfWrp1 .floatL,
    .halfWrp1 .floatR{
        float:none;
        width:100%;
        max-width: inherit;
        margin:auto;
    }
    .halfWrp1 .floatL{
        margin-bottom:15px;
    }
    .btn, .btn2 {
        /* padding: 5px 0 4px; */
        text-align: center;
        font-size: 12px;
    }
    .btn, .btn2 {

    }
    table.col2 th{
        width:55%;
        padding:13px 1%;
    }
    table.col2 td{
        width:45%;
    }
    table.col3 tbody th{
        width:46%;
    }
    table.col3 tbody td{
        width:27%;
    }
    #polish01 .floatL{
        width:100%;
        float:none;
    }
    #polish01 .floatR{
        width:35%;
        padding-top:10px;
    }
    #polish01 ul li{
        margin-right: 5px;
        padding:5px;
    }
    .coatingItem .titArea .inlbl{
        display: block;
    }
    .coatingItem .titArea .floatL{
        padding-top:0;
    }
    #contact .stepBox .stepArea span.step{
        margin-right: 10px;
    }
    #company02 table th, #company02 table td{
        padding:15px 20px;
    }

    /* case */
    .caseList .menuArea .case01 ul.flex{
        display: block;
    }
    .caseList .menuArea .case01 li{
        float:left;
        width:20%;
        margin:0 0.5%;
        padding:5px 1%;
        font-size:12px;
    }
    .caseList .menuArea .case01 li:first-child{
        width:15%;
        min-width: 71.5px;
    }
    .caseList li.archivePost{
        width:49%;
        margin:0 0.5% 5px;
    }
    .caseDetail table th{
        width:25%;
    }
    .caseDetail table td{
        width:75%;
    }
}

@media screen and (max-width: 568px) {
    footer #info .upper,
    footer #info .lower{
        display: block;
        width:100%;
        max-width:280px;
        margin:auto;
    }
    footer .upper{
        padding-top:0;
        text-align: center;
    }
    footer .upper img{
        width: 100%;
    }
    footer #info .btn{
        width:200px;
        margin:auto;
    }

    /* page */
    #servicemenu02 ul.flex{
        display: block;
    }
    #servicemenu02 ul.flex li{
        width:100%;
        margin-bottom:10px;
    }
    #servicemenu02 ul.flex li .floatL{
        max-width: 163px;
        width:30%;
        margin-right: 2%;
    }
    #servicemenu02 ul.flex li .floatR{
        float:left;
        width:68%;
    }
    #carfilm01_02 .inner .floatL,
    #carfilm02 .floatL{
        margin:0 10px 10px 0;
    }
    #carfilm01_02 .inner .floatR,
    #carfilm02 .floatR{
        float:none;
        width:100%;
    }
    .c-cform .w80{
        width:95%;
    }
    .c-cform th span.red{
        float:none;
        margin-left:15px;
    }
    .c-cform th.vTop span.red{
        margin-left:0;
    }
    .c-cform th,
    .c-cform td{
        display: block;
        width:100%;
    }
    .c-cform th,
    .c-cform th.c-cform__type{
        padding:10px 20px 0;
        border-bottom:none;
    }
    .c-cform td{
        padding:8px 20px 10px;
    }
    .c-cform td.c-cform__type{
        padding:8px 25px 10px;
    }
    #company03 .halfWrp3 .floatL{
        float:none;
        width: 100%;
    }
    #company03 .halfWrp3 .floatR{
        margin: 0 0 10px 10px;
    }

    /* case faq */
    .faq .contactArea .telArea, .caseDetail .contactArea .telArea,
    .faq .contactArea .btn.contact, .caseDetail .contactArea .btn.contact{
        float:none;
        width:100%;
        margin:auto;
    }
    .faq .contactArea .telArea, .caseDetail .contactArea .telArea{
        max-width:260px;
        margin:0 auto 15px;
    }
}

@media screen and (max-width: 479px) {
    .breadcrumb{
        margin-bottom:5px;
        padding:8px 0 0;
        font-size:10px;
    }
    #contents p{line-height: 1.7;}

    body{ font-size: 12px; }

    .fs12{ font-size:10px; }
    .fs13{ font-size:10px; }
    .fs14,.fs16,.fs18{ font-size:13px; }
    .fs20{ font-size: 14px; }
    .fs22{ font-size: 16px; }
    .fs24,.fs26,.fs28{ font-size: 16px; }
    .fs30,.fs32{ font-size: 18px; }
    .fs40{ font-size: 24px; }

    .mr20{ margin-right:10px !important; }
    .ml20{ margin-left:0 !important; }
    .mb10{ margin-bottom:5px !important; }
    .mb15{ margin-bottom:5px !important; }
    .mb20{ margin-bottom:10px !important; }
    .mb30{ margin-bottom:15px !important; }
    .mb40{ margin-bottom: 15px !important; }
    .mb50{ margin-bottom: 20px !important; }
    .mb60{ margin-bottom: 30px !important; }
    .mb70{ margin-bottom: 30px !important; }
    .mb100{ margin-bottom: 30px !important; }
    .pb20{ padding-bottom:10px !important; }
    .pt50{ padding-top:50px !important; }
    .pb40{ padding-bottom:25px !important; }

    #hdLower {
        height: 60px;
    }
    #hdLower .logoArea{
        width:170px;
    }
    #header .telArea {
        width: 20px;
        top: 10px;
        right: 120px;
    }
    .telArea .icon img{
        width:20px;
    }
    #header .contact{
        width:30px;
        right:70px;
    }
    button img {
        width: 50px;
    }
    footer #info .upper,
    footer #info .lower{
        max-width: 250px;
    }
    footer #info .upper{
        text-align: center;
    }
    footer #info .logo{
        margin-right: 0;
    }
    #ftSitemap{
        display: none;
    }
    #ftSitemapS{
        display: block;
    }
    #ftSitemapS table{
        width:100%;
        margin-bottom:15px;
        border-top: 1px solid #fff;
        border-left: 1px solid #fff;
    }
    #ftSitemapS table td{
        width:50%;
        padding:5px;
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
        text-align: center;
    }

    #page-top a{
        width: 35px;
    }
    footer{
        padding-top:15px;
    }

    /* page */
    h2 img {
        width: 160px;
    }
    h4.title{ font-size: 14px; margin-bottom:10px;}
    h4.title span{display:block;}
    h4.title span.gold{
        font-size:12px;
    }
    .coatingMenu .menuBox{
        padding:5px;
    }
    .coatingMenu .menuBox ul {
        gap: 5px;
    }
    .coatingMenu .menuBox .linkImg1 > div.ttl p {
        font-size: 100%;
    }
    .coatingMenu .menuBox .linkImg1 > div p {
        font-size: 70%;
    }

    .coatingMenu .glassC ul {
        gap: 5px;
    }
    .coatingMenu .glassC .linkImg1 > div .grasslink {
        padding: 1rem 0 .5rem;
    }
    .coatingMenu .glassC .linkImg1 > div .nen {
        padding: .5rem .8rem;
    }
    .coatingMenu .glassC .linkImg1 > div .price {
        font-size: 70%;
    }
    .coatingMenu .glassC .linkImg1 > div .price span {
        font-size: .8rem;
    }


    .flow .box{
        padding:15px 10px;
    }
    .flow .box h3{font-size:16px;}
    .flow .box h3 .num{
        margin-right: 8px;
    }
    table.col2 th{
        width:60%;
    }
    table.col2 td{
        width:40%;
    }
    table.col3 tbody th{
        width:50%;
    }
    table.col3 tbody td{
        width:25%;
    }
    .priceArea h4 span{
        display:block;
    }
    #top01 .floatL,
    #top01 .floatR{
        float:none;
        width:100%;
    }
    #top01 .floatR{
        max-width: 317px;
        margin: 15px auto 0;
    }
    #top04 .bgWht1,
    #coating03 .bgWht1 .halfWrp2{
        padding:10px;
    }
    #polish02 .box, #polish03 .box{
        padding:15px 10px;
    }
    #polish02 .box .halfWrp2 .floatR,
    #polish03 .box .halfWrp2 .floatR{
        float:none;
        width:100%;
        max-width: inherit;
    }
    #polish02 .box .halfWrp2 .floatL,
    #polish03 .box .halfWrp2 .floatL{
        margin:0 10px 10px 0;
    }
    #coating03_01 ul.bnr2 li.title{
        width:33%;
        margin-top:10px;
        font-size:10px;
    }
    #coating03_01 ul.bnr2 li{
        width: 30%;
    }
    .bgWht1.check {
        padding: 15px 20px 5px;
    }
    .bgWht1.check li{
        margin-bottom: 10px;
        font-size:13px;
    }
    .coatingItem .titArea .bnr{
        width:100px;
    }
    .coatingItem .titArea .icon{
        font-size:10px;
    }
    #servicemenu00 li p{
        font-size:10px;
    }
    #servicemenu03 .dreamcoat .floatL{
        width:40%;
        margin:0 10px 10px 0;
    }
    #servicemenu03 .dreamcoat .floatR{
        float:none;
        width:100%;
        max-width: inherit;
    }
    #servicemenu04 .halfWrp4 .floatL,
    #servicemenu05 .halfWrp4 .floatL,
    #servicemenu06 .halfWrp4 .floatL,
    #servicemenu07 .halfWrp4 .floatL,
    #cleaning03_01 .halfWrp4 .floatL{
        margin:0 10px 10px 0;
    }
    #servicemenu04 .halfWrp4 .floatR,
    #servicemenu05 .halfWrp4 .floatR,
    #servicemenu06 .halfWrp4 .floatR,
    #servicemenu07 .halfWrp4 .floatR,
    #cleaning03_01 .halfWrp4 .floatR{
        float:none;
        width:100%;
        max-width: inherit;
    }
    ul.col4 li{
        width: 50%;
    }
    #cleaning02_03 ul.menu li {
        width: 49%;
        height: 40px;
        margin:0 0.5% 5px;
    }
    #cleaning03_02 .halfWrp3 .floatL,
    #cleaning03_02 .halfWrp3 .floatR{
        float:none;
        width:100%;
        max-width:inherit;
    }
    #cleaning03_02 .floatR.bgWht1{
        margin-top:10px;
        padding:10px;
    }
    h4.tit2{
        padding:10px;
    }
    #carfilm01_01.bgWht1, #carfilm01_02.bgWht1 .inner, #carfilm02 .bgWht1{
        padding:10px;
    }
    .bgWht1.atten{
        padding:10px;
    }
    .bgWht1.checkS{
        padding:15px 10px 5px;
    }
    .bgWht1.checkS li{
        margin-bottom:10px;
    }
    #maintenance02 .floatL,
    #maintenance02 .floatR{
        float:none;
        width:100%;
        margin:auto;
    }
    #maintenance02 .floatL{
        max-width:343px;
        margin-bottom:10px;
    }
    #maintenance02 .floatR{
        max-width: inherit;
    }
    #contact .bgWht1{
        padding:10px;
    }
    #contact .stepBox ul.flex{
        display: block;
    }
    #contact .stepBox ul li{
        float:left;
        width:48%;
        max-width: inherit;
        margin:0 1% 5px;
    }
    .c-cform{
        margin-bottom:20px;
    }
    input.btn{
        width:200px;
        padding:10px;
    }
    .c-cform__consent{
        margin-bottom:20px;
    }
    #scrollbar1{
        width:100%;
        padding:10px;
    }
    #scrollbar1,
    #scrollbar1 .viewport{
        height: 800px;
    }
    #scrollbar1 .scrollbar{
        display: none;
    }
    #scrollbar1 .viewport{
        width:99%;
    }
    #company01 .bgWht1{
        padding:10px 10px 0;
    }
    #company01 .flex li.fs18{
        font-size:10px;
    }
    #company02 table th, #company02 table td{
        padding:10px;
    }

    /* case news faq */
    .newsList li{
        padding:10px;
    }
    .newsList .cate span{
        margin-top:0;
    }
    .caseList .menuArea .case01 li{
        float:none;
        display: inline-block;
        width:auto;
        margin-bottom:8px;
    }
    .caseDetail .bgBlk2{
        padding:10px;
    }
    .caseDetail table th{
        width:30%;
    }
    .caseDetail table td{
        width:70%;
    }
    .caseDetail table td.cate span{
        font-size: 10px;
    }
    .faq .contactArea, .caseDetail .contactArea {
        margin: 0 auto 25px;
    }
    #newsList .newsBox h3{
        font-size: 14px;
    }
    .pager.bottomPager{
        padding-top:15px;
    }
    #newsDetail .bgBlk2{
        padding:10px;
    }
    #newsDetail .btn.return{
        width:270px;
    }
}

@media screen and (max-width: 360px) {
    body{ font-size:11px; }
    .fs22{ font-size: 14px; }
    .fs24,.fs26,.fs28{ font-size: 14px; }
    #hdLower {
        height: 55px;
    }
    #hdLower .logoArea{
        width:160px;
    }
    #header .telArea {
        width: 18px;
        right: 110px;
    }
    .telArea .icon img{
        width:18px;
    }
    #header .contact{
        width:25px;
        right:60px;
    }
    button img {
        width: 45px;
    }
    .g_naviWrap{
        top:55px;
    }
    footer #info .logo{
        width:80%;
        max-width:inherit;
        margin:auto;
    }

    /* page */
    #polish01 .floatR{
        width:30%;
    }

    /* case faq news */
    #newsList .newsBox h3{
        font-size: 13px;
    }
}

@media screen and (max-width: 330px) {
    .caseList li.archivePost{
        width:100%;
        margin:0 0 5px;
    }
}

/*---------------------
オブジェクト設定
---------------------*/
embed,
iframe,
object{
	max-width: 100%;
}
/* ===== CF7移行（MW WP Form → Contact Form 7）ブリッジ ===== */
.c-cform td.tel input[type="tel"]{
    width:50%;
    padding:5px;
    background:#f4f7ff;
    border-radius:5px;
}
.c-cform input[name="zip"]{
    width:40%;
    padding:5px;
    background:#f4f7ff;
    border-radius:5px;
}
.c-cform td.c-cform__type .wpcf7-checkbox .wpcf7-list-item{
    display:inline-block;
    margin:0 15px 0 0;
}
.c-cform td.c-cform__type .wpcf7-checkbox input[type="checkbox"]{
    width:24px;
    height:24px;
    transform:scale(1.4);
    margin-right:6px;
}
.c-cform__consent .wpcf7-acceptance .wpcf7-list-item{
    margin:0;
}
.c-cform__consent .wpcf7-acceptance .wpcf7-list-item-label{
    display:none;
}
.c-cform__consent .wpcf7-acceptance input[type="checkbox"]{
    margin-right:10px;
}
.c-cform .wpcf7-not-valid-tip,
.c-cform__consent .wpcf7-not-valid-tip{
    display:inline-block;
    color:#ff0000;
}

/* submit + spinner: spinnerを絶対配置で送信ボタンの右外へ（レイアウトずれ防止） */
.c-submit{ position:relative; display:inline-block; }
.c-submit .wpcf7-spinner{ position:absolute; top:50%; right:0; margin:0; transform:translate(120%,-50%); }

/* reCAPTCHA v3 バッジを page-top の上へ退避（SP） */
@media screen and (max-width:768px){
  .grecaptcha-badge{ bottom:100px !important; z-index:9999 !important; }
}

/* case archive: no matching results */
.caseList .noCase{
    width:100%;
    padding:40px 0;
    text-align:center;
    font-size:16px;
    color:#555;
    list-style:none;
}

/* header tel number: fit within header height at all widths (fs36 too tall) */
#header .telArea .num{ font-size:30px; white-space:nowrap; line-height:1; }
@media screen and (max-width:1100px){ #header .telArea .num{ font-size:26px; } }
@media screen and (max-width:999px){ #header .telArea .num{ font-size:24px; } }
/* header logo address: prevent clipping/wrap at desktop */
#hdLower .logoArea{ width:300px; }
#hdLower .logoArea .address{ white-space:nowrap; }

/* reCAPTCHA badge: keep clear above #page-top at ALL widths (gotop occupies ~90px from bottom) */
.grecaptcha-badge{ bottom:110px !important; z-index:9999 !important; }

/* テキストロゴ（ヘッダー/フッター/サイド）＝画像ロゴのテキスト化 */
.brandLogo{ display:inline-block; text-decoration:none; color:#fff; line-height:1.15; }
.brandLogo__sub{ display:block; font-size:12px; letter-spacing:.06em; font-weight:normal; white-space:nowrap; }
.brandLogo__name{ display:block; font-family:'Bitter',serif; font-size:30px; font-weight:bold; letter-spacing:.04em; }
.brandLogo__side{ display:block; font-family:'Bitter',serif; font-size:22px; font-weight:bold; color:#fff; }
#ftLink .logo .brandLogo__name{ font-size:26px; }

/* 相互リンク サービスバナー（Notion手順準拠：PC2枚横並び/SP縦100%） */
.service-banner{ display:flex; justify-content:center; flex-wrap:wrap; gap:15px 20px; max-width:1000px; margin:10px auto 30px; padding:0 15px; }
.service-banner__link{ display:block; width:calc(50% - 10px); }
.service-banner__img{ display:block; width:100%; height:auto; }
@media screen and (max-width:767px){ .service-banner__link{ width:100%; } .service-banner{ margin-top:15px; } }

/* テキストのみリンク：下線→ホバーで下線消す（GRACE定番） */
.copyright a,
#contents p a{ text-decoration:underline; }
.copyright a:hover,
#contents p a:hover{ text-decoration:none; }

/* footer tel number: アイコン+番号を1行に収める */
footer .telArea .num{ font-size:28px; white-space:nowrap; }

/* footer tel number SP: 250px幅に横並びで収める(〜375) */
@media screen and (max-width:768px){ footer .telArea .num{ font-size:24px; } }
