@charset "UTF-8";
@import "reset5.css";
/*@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);*/

body { color:#373737; line-height:1;  padding: 0; position: relative; min-height: 100%; overflow-x:hidden; background: #373737; -webkit-text-size-adjust: 100%; font-family: "Helvetica Neue", Helvetica, Arial, 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "Meiryo", "Osaka", "MS Pゴシック", "MS PGothic", sans-serif; }
html {  min-height: 100%; }

* {word-wrap: break-word; }
img { -ms-interpolation-mode: bicubic; }
body { font-size: 18px; line-height: 2; letter-spacing:0.1em; }
body p { font-weight: 400; letter-spacing:0.1em; }
h2,h3 { text-align: center }
h4,h5 { text-align: left !important }


/* !clearfix */
hr { display: none; }

.cfix { /zoom : 1; }
.cfix:after { content : ''; display : block; clear : both; }

/* スクロールバーの有無によるズレ対策 */
html {
	overflow-y: scroll;
}

img {
	vertical-align: middle;
}


/* margin-bottom
=========================================*/
.mb0 { margin-bottom:0 !important; }
.mb3 { margin-bottom:3px !important; }
.mb4 { margin-bottom:4px !important; }
.mb5 { margin-bottom:5px !important; }
.mb7 { margin-bottom:7px !important; }
.mb10 { margin-bottom:10px !important; }
.mb12 { margin-bottom:12px !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; }
.mb50 { margin-bottom:50px !important; }
.mb60 { margin-bottom:60px !important; }
.mb80 { margin-bottom:80px !important; }


/* margin-top
=========================================*/
.mt0 { margin-top:0 !important; }
.mt3 { margin-top:3px !important; }
.mt4 { margin-top:4px !important; }
.mt5 { margin-top:5px !important; }
.mt7 { margin-top:7px !important; }
.mt10 { margin-top:10px !important; }
.mt12 { margin-top:12px !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; }
.mt50 { margin-top:50px !important; }

.mr5 { margin-right:5px !important; }
.mr10 { margin-right:10px !important; }


/* padding-top
=========================================*/
.pt0 { padding-top:0 !important; }
.pt3 { padding-top:3px !important; }
.pt4 { padding-top:4px !important; }
.pt5 { padding-top:5px !important; }
.pt7 { padding-top:7px !important; }
.pt10 { padding-top:10px !important; }
.pt12 { padding-top:12px !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; }
.pt50 { padding-top:50px !important; }
.pt60 { padding-top:60px !important; }
.pt80 { padding-top:80px !important; }


.tx9 { font-size: 9px }
.tx10 { font-size: 10px }
.tx11 { font-size: 11px }
.tx12 { font-size: 12px }
.tx13 { font-size: 13px }
.tx14 { font-size: 14px }
.tx15 { font-size: 15px }
.tx16 { font-size: 16px }
.tx18 { font-size: 18px }
.tx20 { font-size: 20px }
.tx24 { font-size: 24px }

.fltR { float: right; }
.fltL { float: left; }


/* !Links */
a:link { text-decoration: none }
a:visited { text-decoration: none }
a:hover { text-decoration: none }
a:active { text-decoration: none }


.sp-none { display: block }
.pc-none { display: none; }


html {}
#wrapper { position: relative; width: 100%; text-align: center; overflow: hidden }
#loader { position: fixed; left: 50%; top: 50%; z-index: 10000; }
.contents { position: relative; z-index:100; padding:70px 0 0; margin: 0; min-width:1240px; }


/* header */
#header { width:100%; background:#000; height:70px; text-align:left; position:fixed; z-index:200; min-width:1240px; }
#header h1 { padding: 10px 0 0 60px; }
#header h1 img { width: auto; height: 50px }
#header .gnav { font-size:0; position:absolute; top:0; right:305px; }
#header .gnav li { display:inline-block; position: relative }
#header .gnav li a { color:#fff; font-size:15px; font-weight: 500; letter-spacing:0.1em; line-height:1; padding:27px 35px; display: block }
#header .gnav li ol { position: absolute; left: 0; top: 70px; background: rgba(0,0,0,0.9); display: none }
#header .gnav li ol li { display: block; }
#header .gnav li ol li a { color:#fff; font-size:15px; letter-spacing:0.1em; line-height:1; padding: 1.5em 35px; white-space: nowrap; display: block }
#header .btn a { color:#fff; font-size:16px; letter-spacing:0.1em; line-height:1; width:195px; padding:28px 0 27px 70px; background:#5c4b84; position:absolute; top:0; right:0; display:block; text-align: left !important }
#header .btn a .ico { position:absolute; top:23px; left:32px; width: 26px; height: 25px  }

.page-tit { padding: 0 1.1%; }
.p-page-header::before { background: none }
.p-page-header { position: relative; margin: 0; margin: 0; height: 40vw }
.p-page-header .bt { position: absolute; left: 0; bottom: 0 }

/* footer */
#footer { padding: 60px 0; margin: 0; min-width:1240px; text-align: center }
#footer a { color:#fff; text-decoration:none; }
#footer .f-link { font-size:0; text-align:center; margin:50px 0 50px; }
#footer .f-link .block { display:inline-block; vertical-align: text-top; padding:0 30px; text-align:left; }
#footer .f-link .block ul li { font-size:16px; font-weight:300; letter-spacing:0.12em; margin:0 0 10px 10px; }
#footer .f-link h3 { font-size:18px; font-weight:400; letter-spacing:0.1em; line-height:1; margin:0 0 20px; text-align: left !important }
#footer .f-link li:nth-child(4).block h3 { margin:0 0 30px; }
#footer .f-link .cur { color:#ba9c58; }
#footer p { color:#fff; font-size:12px; letter-spacing:0.12em;  }
#footer .copy { font-size:14px; font-weight:500; margin:20px 0 0; }
.p-footer-blog { background: #141d1f }
.js-footer-blog__list { display: none }
.p-footer-blog__item-wrapper { padding: 0 40px; min-width:960px; text-align: left; background: #141d1f }
.p-footer-blog__item-wrapper h3 { text-align: left !important }

/* main */
#main { background:#fff; }
#main .main-inner { min-width: 1240px; }
#main .main-img { position:relative; z-index:1; background: #373737 }
#main .main-img img { opacity: 0 }
#main ul.main-bnrs { background-color: rgba(0,0,0,0.79); margin:-160px 0 0; padding:0 0.75% 50px; position:relative; z-index:2; display: block }
#main ul.main-bnrs li { width:33.333%; float:left; }
#main ul.main-bnrs li .inner { margin:0 25px; position:relative; text-align: center }
#main ul.main-bnrs li h2 { position:absolute; top:-25px; left:50%; margin:0 0 0 -145px; }
#main ul.main-bnrs li p { color:#fff; font-size:24px; letter-spacing:0.06em; line-height:1.6; padding:50px 0 30px; }
#main .main-bnrs-sp { background-color: rgba(0,0,0,0.79); margin:-160px 0 0; padding:0 0.75% 50px; position:relative; z-index:2; display: none }
#main .main-bnrs-sp li { width: 100% }
.slider {
    margin: 0 auto;
    width: 100%;
	text-align: center
}
.slider img{
    height: auto;
    width: 100%;
}
#main .top-bnr { background-color: rgba(0,0,0,0.79); padding:0 0.75% 50px; position:relative; z-index:2; text-align: center !important }
#main .top-bnr img { margin: 0 auto }

.container { padding:0 1.1%; }
.cont-img { position:relative; z-index:1; }
.cont-img img { opacity: 0 }
p.intro { font-size:24px; line-height:1.9; letter-spacing:0.04em; }
p.intro .notes { font-size:18px; }
h2.big-tit { margin:0 0 60px; }
h3.tit { color:#ba9c58; font-size:36px; font-weight:500; letter-spacing:0.14em; line-height:1; margin:0 0 30px; }
.sec { position: relative; background: #fff; text-align: center; }
.sec-inner { position:relative; /*opacity: 0; top: 120px;*/ }
#cb_1::before, #cb_3::before, #measure::before, #before::before, #delivery::before, #voices::before { display: block; height: 120px; margin-top: -120px; content: ""; }
.btn-more { margin:50px 0 0; }
.btn-more a { color:#fff; font-size:24px; line-height:1; text-align:center; background:#ba9c58; width:450px; padding:7px; margin:0 auto; border-radius:8px; display:block; }
.btn-more a span { border:2px solid #8774b5; box-sizing:border-box; width:100%; padding:20px 0; border-radius:8px; display:inline-block; }
.pink { color:#e38777; }
.group {}
.group li { text-align:left; margin:0 0 50px; position:relative; }
.group li:last-child { margin:0; }
.group li h4 { font-size:24px; font-weight:500; letter-spacing:0.14em; border-bottom:2px solid #e7e7e7; padding:0 0 5px; margin:0 0 10px; }
.fd { /*opacity: 0; top: 120px; position: relative;*/ }
.zm { /*opacity: 0; position: relative;*/ }
.p-showcase { height: 50vw; position: relative }
.p-showcase .tp { position: absolute; left: 0; top: 0; z-index: 10 }
.p-showcase .bt { position: absolute; left: 0; bottom: 0; z-index: 10 }
.gld { color: #ba9c58 }

/* top */
#top .p-news-ticker { position: relative; display: block; border-top:1px solid #635784; text-align:left; padding:1px 0 0; margin:0 0 15px; background:#4d4d4d; text-align: left !important  }
#top .p-news-ticker__inner { background:#4d4d4d; padding: 20px 40px; margin: 0; position:relative; text-align: left }
#top .p-news-ticker__archive-link { color:#fff !important; font-size:16px; position:absolute; top: 20px; right:40px; line-height: 2em }
#top .p-news-ticker__list { font-size:16px; position:absolute; top: 20px; left:165px; padding: 0 200px 0 0; line-height: 2em }
#top .p-news-ticker__item a { color:#fff; }
#top .p-news-ticker__item .p-news-ticker__item-date { color:#f1b707; padding:0 15px 0 0; }
#top .p-news-ticker h3 { line-height:1; margin:0; text-align: left !important }

#top .solution .block01 { padding:70px 0 20px; position:relative; }
#top .solution .block01 .tx { margin:0 0 0 170px; }
#top .solution .block01 .figure { position:absolute; bottom:-60px; left:12.2%; }
#top .solution .block02 { padding:0 1.83% 0 0; position:relative; z-index:20; }
#top .solution .block02 .inner { background:#373737; }
#top .solution .block02 h2 { position:absolute; top:18px; left:5.5%; }
#top .solution .block02 h3 { margin:0 0 30px; position:relative; text-align: left }
#top .solution .block02 ul li { color:#fff; font-size:24px; font-weight:400; letter-spacing:0.06em; }
#top .solution .block02 ul li .num { position:absolute; top:-80px; left:-100px; }
#top .solution .block02 ul li:nth-child(1) { padding:60px 0 0 37.5%; text-align:left; position:relative; }
#top .solution .block02 ul li:nth-child(1) ul li { margin:0 0 15px; padding:0; }
#top .solution .block02 ul li:nth-child(1) .circle { position:absolute; bottom:-165px; left:50%; margin:0 0 0 210px; }
#top .solution .block02 ul li:nth-child(2) { padding:130px 0 0 12.8%; text-align:left; position:relative;  }
#top .solution .block02 ul li:nth-child(2) ul li { margin:0 0 15px; padding:0; }
#top .solution .block02 ul li:nth-child(2) .circle { position:absolute; bottom:-250px; left:50%; margin:0 0 0 -210px; }
#top .solution .block02 ul li:nth-child(3) { padding:0 0 0 58.8%; text-align:left; margin:-100px 0 0; position:relative; }
#top .solution .block02 ul li:nth-child(3) ul li { margin:0 0 15px; padding:0; }
#top .solution .block02 ul li:nth-child(3) ul li:last-child { margin:0; }
#top .solution .block02 ul li:nth-child(3) .circle { position:absolute; bottom:-250px; left:50%; margin:0 0 0 440px; }

#top .overview { position:relative; z-index:10; }
#top .overview .sec-inner { padding:65px 7.72% 0; }
#top .overview .big-tit { position:relative; z-index:2; }
#top .overview .intro { margin:0 0 120px; }
#top .overview ul { margin:50px 0 0 -120px; }
#top .overview ul li { width:50%; float:left; margin:0 0 60px }
#top .overview ul li:nth-child(3), #overview ul li:nth-child(4) { margin:0; } 
#top .overview ul li .inner { margin:0 0 0 120px; }
#top .overview ul li h4 { margin:30px 0 20px; }
#top .overview ul li p { text-align:left; }
#top .overview .bg-service { position:absolute; top:-70px; left:0; margin:0 9.5%; z-index:1; }

#top .altar .sec-inner { padding:40px 7.72% 0; }
#top .altar .block01 ul { margin:90px 0 0 -120px; }
#top .altar .block01 ul li { width:50%; float:left; }
#top .altar .block01 ul li .inner { margin:0 0 0 120px; }
#top .altar .block01 ul li h4 { color:#ba9c58; font-size:32px; font-weight:500; letter-spacing:0.14em; line-height:1; margin:30px 0; }
#top .altar .block01 ul li p { text-align:left; }
#top .altar .block02 { margin:70px 0 0; }
#top .altar .block02 .clm-3 { margin:45px 0 0 -60px; }
#top .altar .block02 .clm-3 li { width:33.333%; float:left; }
#top .altar .block02 .clm-3 li .inner { margin:0 0 0 60px; }
#top .altar .block02 .clm-3 .pic { margin:0 0 5px; }
#top .altar .block02 .clm-2 { margin:40px 0 0 -120px; }
#top .altar .block02 .clm-2 li { width:50%; float:left; }
#top .altar .block02 .clm-2 li .inner { margin:0 0 0 120px; }
#top .altar .block02 .clm-2 .pic { margin:0 0 5px; }
#top .altar .block02 .box { margin:50px 0 100px; text-align:left;  }
#top .altar .block02 .box .pic { float:left; padding:0 0 0 19.5%; }
#top .altar .block02 .box p { font-size:24px; font-weight:500; line-height:1.8; float:left; padding:215px 0 0 30px; }
#top .altar .block03 { padding:0 8.82%; margin:0 0 100px; }
#top .altar .block04 { padding:0 8.82%; }
#top .altar .block04 .intro { margin:0 0 50px; }
#top .altar .block04 .group li:last-child p { position:absolute; top:65px; left:0; }
#top .altar .block04 .figure { padding:20px 0 0 600px; }
#top .altar .group { margin:40px 0 0; }
#top .altar .group li .pic { margin:30px 0 0; }
#top .altar .tx-bold { font-weight:500; }

#top .close { margin:0; }
#top .close .sec-inner { padding:40px 7.72% 120px; }

#top .raihai { margin:0 0 15px; }
#top .raihai .sec-inner { padding:40px 7.72% 120px; }

#top .price { margin:0 0 15px; }
#top .price .sec-inner { padding:120px 7.72%; }
.price .box { background:#f3f3f3; padding:50px 60px 80px; margin:60px 0 0; }
.price .sample { text-align:left; padding:0 0 0 70px; position:relative; }
.price .sample p { font-size:24px; line-height:1.8; position:absolute; top:50px; left:220px; }
.price .price-list { margin: 40px 0 0; }
.price .price-list p { font-size:24px; font-weight:400; padding:20px 60px; background:#dddae7; border-top:2px solid #8774b5; border-bottom:2px solid #8774b5; text-align:left; }
.price .price-list span { color:#8774b5; font-weight:500; } 
.price .price-list th { font-size:18px; font-weight:500; background:#fff; border-bottom:1px solid #a7a7a7; padding:15px 0; text-align:center; }
.price .price-list td { font-size:18px; font-weight:500; border-bottom:1px solid #a7a7a7; padding:20px 0;text-align:center; }
.price .price-list th.cell01 { width:15%; }
.price .price-list th.cell02 { width:24%; }
.price .price-list th.cell03 { width:23%; color:#e38777; }
.price .price-list th.cell04 { width:23%; }
.price .price-list th.cell05 { width:15%; color:#ba9c58; }
.price .price-list td.cell03 { color:#e38777; }
.price .price-list td.cell05 { font-size:18px; }

.price .price-list table { width: 100% }
.prpl { font-weight:400; padding:20px 60px; margin: 40px 0 0; background:#dddae7; border-top:2px solid #8774b5; border-bottom:2px solid #8774b5; text-align:left; }
.prpl h3 { font-size:24px; }
.prpl p { text-align: center }

.tbl-form { border-top: solid 2px #ba9c58; width: 100% }
.tbl-form th { font-size:18px; font-weight:500; border-bottom:1px solid #a7a7a7; padding: 1.5em; }
.tbl-form td { font-size:18px; font-weight:500; border-bottom:1px solid #a7a7a7; padding: 1.5em; }

#cb_9 { margin:0; }
#top .qa { /*margin:0 0 15px;*/ }
#top .qa .sec-inner { padding:120px 7.72%; }
#top .qa .big-tit { margin:0 0 40px !important; }
#top .qa ul { text-align:left; }
#top .qa ul li { margin:0 0 40px; }
#top .qa ul li:last-child { margin:0; }
#top .qa ul li .q { font-size:24px; font-weight:500; background:#f3f3f3; padding:25px 25px 25px 120px; position:relative; }
#top .qa ul li .a { font-size:18px; line-height:2; padding:30px 25px 0 120px; position:relative; }
#top .qa ul li .q img { position:absolute; top:20px; left:30px; }
#top .qa ul li .a img { position:absolute; top:25px; left:30px; }

#top .voice { margin:0 0 15px; border-top: solid 15px #373737 }
#top .voice .sec-inner { padding:120px 7.72%; }
#top .voice .box { padding:0 8.82%; }
#top .voice .voice-area { background:#f3f3f3; text-align:left; padding: 40px; border-radius:20px; box-shadow: 2px 2px 1px -1px rgba(0,0,0,0.2); position:relative; }
#top .voice .voice-area h3.name { font-size:24px !important; font-weight:500; text-align: left !important; margin-bottom: 0.5em }
#top .voice .voice-area h3.name span { color:#8774b5; }
#top .voice .voice-area .parts { position:absolute; bottom:-35px; left:50%; margin:0 0 0 -17px; }
#top .voice .bullets { font-size:0; margin:70px 0 0; }
#top .voice .bullets li { display:inline-block; padding:0 8px; }
.p-review__button { background-color: #fff !important; margin: 0 0 1em 1em; border: solid 1px #a6a6a6 }
#top .voice .slick-dots li { background: #fff !important; position: relative; border: solid 1px #d7d7d7 !important }
#top .voice .slick-dots li.slick-active, #top .voice .slick-dots li:hover { background: #ff7f00 !important; }

#top .estimate .sec-inner { padding:120px 7.72%; background:url(../img/bg_estimate.jpg) fixed; background-size: cover; }
#top .estimate .box { padding:60px; background:#f8f5ee; text-align:left; }
#top .estimate .btn-estimate { margin:50px 0 0; }
#top .estimate .btn-estimate a { color:#fff; font-size:24px; line-height:1; background:#e38777; width:450px; padding:7px; margin:0 auto; border-radius:8px; display:block; }
#top .estimate .btn-estimate a span { border:2px solid #fff; box-sizing:border-box; width:100%; padding:20px 0; border-radius:8px; display:inline-block; }
.btn-submit p.alert { display: none; color: red; text-align: center !important }
.btn-submit input[type="submit"],.btn-submit input[type="button"] { padding: 0.5em; width: 50%; color: #fff; border-radius: 10px; background: crimson; cursor: pointer }
#top .estimate .val input[type="text"],#top .estimate .val input[type="tel"],#top .estimate .val input[type="email"],#top .estimate .val textarea { width: 95% }
.ww { width: 5em !important }

#top .about { margin: 15px 0 0; }
#top .about .sec-inner { padding:120px 7.72%; }
#top .about .big-tit { margin:0 0 40px !important; }
#top .about .box { background:#f3f3f3; padding:50px 60px 80px; margin:60px 0 0; }
#top .about .tbl-form th { vertical-align: top; text-align: left; white-space: nowrap }
#top .about .tbl-form td { font-weight: 400; text-align: left; }

.f-bnrs { background: rgba(55,55,55,0.95); width: 100%; padding: 1em 0; text-align: center }
.f-bnrs a { display: inline-block; margin: 0 1em }

/* about-close */
#about-close .pic p { font-size:16px; margin:10px 0 0; }
#about-close .sec01 { margin:0 0 15px; }
#about-close .sec01 .sec-inner { padding:40px 7.72% 90px; }
#about-close .sec01 .intro { margin:0 0 30px; }
#about-close .sec01 .flame01 { margin:0 0 100px; }
#about-close .sec01 .flame02 { margin:0 0 60px; padding:0 0 80px; border-bottom:1px solid #e7e7e7; }
#about-close .sec01 .flame03 { margin:0 0 60px; padding:0 0 60px; border-bottom:1px solid #e7e7e7; }
#about-close .sec01 .block01 { padding:0 8.82%; margin:60px 0 0; }
#about-close .sec01 .block01 .group li:last-child h4 { border-bottom:none; padding:0; }
#about-close .sec01 .box { background:#f1ebde; margin:25px 0 0; padding:15px 20px; }
#about-close .sec01 .pic { margin:40px 0 0; text-align:center; }
#about-close .sec02 { margin:0 0 15px; }
#about-close .sec02 .sec-inner { padding:90px 7.72%; }
#about-close .sec02 .big-tit { margin:0 0 30px; }
#about-close .sec02 .intro { margin:0 0 10px; font-weight:500; }
#about-close .sec02 .pic { margin:30px 0 0; }
#about-close .sec02 .block01 { padding:0 8.82%; margin:60px 0 0; }
#about-close .sec03 .sec-inner { padding:90px 7.72%; }
#about-close .sec03 .big-tit { margin:0 0 30px; }
#about-close .sec03 .intro { font-weight:500; }
#about-close .sec03 .block01 { padding:0 8.82%; margin:40px 0 0; }
#about-close .sec03 .block01 .box { background:#f3f3f3; padding:60px; margin:35px 0 0; }
#about-close .sec03 .block01 table { border-top:1px solid #a7a7a7; }
#about-close .sec03 .block01 th { font-size:16px; font-weight:500; background:#fff; border-bottom:1px solid #a7a7a7; padding:15px 0; text-align:center; width:50%; }
#about-close .sec03 .block01 td { font-size:16px; font-weight:500; border-bottom:1px solid #a7a7a7; padding:20px 0;text-align:center; width:50%; }
#about-close .sec03 .block01 p { margin:10px 0 0; }
#about-close .sec03 .block02 { padding:0 8.82%; margin:60px 0 0; }

#about-close .price .price-list { margin: 20px 0 0; }

h1.p-page-header__title { padding: 0 0 1em }
#other .sec { margin:0 0 15px; }
#other .sec .sec-inner { padding:40px 7.72% 90px; }
#other .p-page-header { background: #f7f7f7 }
#other .p-page-header__inner { padding: 0 0 1em }
.p-widget-area { display: none }

.pb_slider_nav { margin-top: 10px }
.pb_slider_nav_item { margin: 1px }
.p-page-header__desc { text-align: center !important }

input[type=text] {
  font-size: 16px !important;
  /*transform: scale(0.8);*/
}


@media screen and (max-width: 780px){
	
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
	
	body { font-size:18px; line-height: 1.8; letter-spacing: 0.1em; -webkit-text-size-adjust: none; }

    a { text-decoration:none; -webkit-tap-highlight-color:rgba(0,0,0,0); -webkit-touch-callout:none; }
	
	.sp-none { display:none; }
	.pc-none { display:block; }

	.contents { position: relative; z-index:100; padding:50px 0 0; min-width:inherit; }	
	
	
	/* header */
	#header { height:50px; min-width:inherit; }
	#header h1 { padding: 5px 0 0 20px; position: relative; z-index: 10 }
	#header h1 img { width: auto; height:40px; }
	
	#header .gnav { font-size:0; position: fixed; top:0; right:0; width: auto; height: auto; min-height: 100%; padding: 50px 25px; background: rgba(0,0,0,0.9); display: none }
	#header .gnav li { display:inline-block; position: relative; width: 100% }
	#header .gnav li a { color:#fff; font-size:15px; letter-spacing:0.1em; line-height:1; padding: 1.5em 0; border-bottom: solid 1px #373737; vertical-align: top; display: block }
	#header .gnav li ol { position: relative; left: inherit; top: inherit; background: none; display: block }
	#header .gnav li ol li { display: inline-block; width: 50% !important }
	#header .gnav li ol li a { color:#fff; font-size:15px; letter-spacing:0.1em; line-height:1; padding: 1em; white-space: nowrap; display: block }
	#header .btn { display: none }
	#header .btn a { color:#fff; font-size:15px; letter-spacing:0.1em; line-height:1; width: calc(100%); padding: 28px 0 27px 70px; background:#5c4b84; position:fixed; top: 480px; right:inherit; left: 0; display:block; text-align: left !important }
	#header .btn a .ico { position: absolute; top:23px; left:32px; width: 26px; height: 25px  }
	#header .btn-menu { position: absolute; right:0; top: 0; cursor: pointer; z-index: 10 }

	/* footer */
	#footer { padding: 30px 0; min-width:inherit; }
	#footer .f-link { display:none; }
	#footer .f-logo img { width: auto; height: 100px; margin: 0 0 20px; }
	#footer p { font-size:10px; }
	#footer .copy { font-size:12px; }
	.p-footer-blog__item-wrapper { padding: 0 20px; min-width:inherit; }
	
	/* main */
	#main .main-inner { min-width: inherit; }
	#main .main-img { margin: 0 -33.3% 0; }
	#main ul.main-bnrs { display: none }
	#main .main-bnrs-sp { background-color: rgba(0,0,0,0.79); margin: -120px 0 0; padding: 10px 10px 50px; position:relative; z-index:2; display: block }
	#main .main-bnrs-sp li {  }
	.slider {
		margin: 0 auto;
		width: 100%;
		text-align: center !important
	}
	.slider img{
		height: auto;
		width: 100%;
	}
	#main .top-bnr { padding:0 10px 20px; }
	#main .top-bnr img { width: 100%; height: auto }
	/*#main ul { margin:-80px 0 0; padding:0 0.75% 50px; position:relative; z-index:2; }
	#main ul li { width:100%; margin:0 0 100px; }
	#main ul li:last-child  { margin:0; }
	#main ul li .inner { margin:0; }
	#main ul li h2 { position:absolute; top:-25px; left:50%; margin:0 0 0 -145px; }
	#main ul li p { color:#fff; font-size:24px; letter-spacing:0.06em; line-height:1.6; padding:50px 0 30px; }*/
	


	.container { padding:0 5px; }
	p.intro { font-size:18px; line-height:1.8; letter-spacing:0.04em; text-align:left; }
	p.intro .notes { font-size:16px; line-height:1.6; display:inline-block; margin:5px 0 0; }
	h2.big-tit { margin:0 0 30px; }
	h2.big-tit img { width: auto; height:32px; }
	h3.tit { font-size:24px; letter-spacing:0.1em; line-height:1.4; margin:0 0 15px; }
	.sec-inner { /*opacity: 0; top: 80px;*/ position: relative; }
	#cb_1::before, #cb_3::before, #measure::before, #before::before, #delivery::before, #voices::before { display: none; height: 0; margin-top: 0; content: ""; }
	.btn-more { margin:30px 0 0; }
	.btn-more a { font-size:20px; width:auto; padding:5px; font-weight: bold }
	.btn-more a span { width:100%; padding:15px 0; }
	.group li { margin:0 0 40px; }
	.group li h4 { font-size:18px; letter-spacing:0.1em; padding:0 0 2px; margin:0 0 10px; }
	.fd { /*opacity: 0; top: 80px; position: relative;*/ }
	.zm { /*opacity: 0; position: relative;*/ }
	.p-showcase { height: 100vw; position: relative }
	
	/* top */
	#top .p-news-ticker { margin:0 0 15px; text-align: center }
	#top .p-news-ticker__inner { padding:15px 20px 13px; margin: 0 auto }
	#top .p-news-ticker__archive-link { font-size:14px; position: absolute; top:inherit; bottom:10px; right:10px; }
	#top .p-news-ticker__list { font-size:14px; position: relative; top: 0; left:inherit; padding:0 0 10px; }
	#top .p-news-ticker__item .p-news-ticker__item-date { padding:0; display:block; }
	#top .p-news-ticker h3 { line-height:1; margin:0 0 15px; }
	#top .p-news-ticker h3 img { width: auto; height:20px; }
	

	#top .solution .block01 { padding: 40px 0 100px; }
	#top .solution .block01 .tx { margin:0; padding:0 40px; }
	#top .solution .block01 .figure { position:absolute; bottom:-60px; left:5%; }
	#top .solution .block01 .tx img { width:100%; height:auto; }
	#top .solution .block01 .figure img { width: auto; height:160px; }
	#top .solution .block02 { padding:0 10px 0 0; }
	#top .solution .block02 .inner { padding:0 20px 0 0; }
	#top .solution .block02 h2 { position:absolute; top:5px; left:0; }
	#top .solution .block02 h3 { margin:0 0 15px; }
	#top .solution .block02 ul li .circle { padding:0 30px; }
	#top .solution .block02 ul li { font-size:18px; text-indent:-15px; }
	#top .solution .block02 ul li .num { position:absolute; top:-30px; left:-40px; height:50px; }
	#top .solution .block02 ul li:nth-child(1) { padding:60px 0 0 80px; }
	#top .solution .block02 ul li:nth-child(2) { padding:60px 0 0 80px;  }
	#top .solution .block02 ul li:nth-child(3) { padding:60px 0 0 80px; margin:0; }
	#top .solution .block02 ul li:nth-child(3) ul li:last-child { margin:0; }
	#top .solution .block02 ul li:nth-child(1) ul li, #top .solution .block02 ul li:nth-child(2) ul li, #top .solution .block02 ul li:nth-child(3) ul li { margin:0 0 5px; }
	#top .solution .block02 ul li:nth-child(1) .circle, #top .solution .block02 ul li:nth-child(2) .circle, #top .solution .block02 ul li:nth-child(3) .circle { position:static; margin:20px 0 0; }
	#top .solution .block02 h2 img { width:45px; height: auto }
	#top .solution .block02 h3 img { width: auto; height:23px; }
	#top .solution .block02 h3 img.imgChange { width: auto; height:46px; }
	#top .solution .block02 ul li .circle img { width:100%; height:auto; }

	#top .overview .sec-inner { padding:30px 12px 0; }
	#top .overview .intro { margin:0 0 30px; }
	#top .overview ul { margin:20px 0 0 0; }
	#top .overview ul li { width:100%; margin:0 0 30px; }
	#top .overview ul li:nth-child(3), #top .overview ul li:nth-child(4) { margin:0 0 30px; }
	#top .overview ul li .inner { margin:0; }
	#top .overview ul li h4 { margin:15px 0 10px; }
	#top .overview ul li h4 img { width: auto; height:20px; }
	#top .overview ul li .pic { padding:0 20px; }
	#top .overview ul li .pic img { width:100%; height: auto }
	#top .overview .bg-service { top:0px; left:0; margin:0 5%; }


	#top .altar .sec-inner { padding:40px 12px 0; }
	#top .altar .block01 ul { margin:50px 0 0 0; }
	#top .altar .block01 ul li { width:100%; margin:0 0 40px; }
	#top .altar .block01 ul li:last-child { margin:0; }
	#top .altar .block01 ul li .inner { margin:0; }
	#top .altar .block01 ul li h4 { font-size:22px; letter-spacing:0.1em;  margin:15px 0; }
	#top .altar .block02 { margin:50px 0 0; }
	#top .altar .block02 .clm-3 { margin:30px 0 0; }
	#top .altar .block02 .clm-3 li { width:100%; margin:0 0 20px; }
	#top .altar .block02 .clm-3 li .inner { margin:0; }
	#top .altar .block02 .clm-2 { margin:0; }
	#top .altar .block02 .clm-2 li { width:100%; margin:0 0 20px; }
	#top .altar .block02 .clm-2 li .inner { margin:0; }
	#top .altar .block02 .clm-3 .pic, #top .altar .block02 .clm-2 .pic { margin:0 0 5px; }
	#top .altar .block02 .box { margin:30px 0 0; }
	#top .altar .block02 .box .pic { float:none; padding:0 50px; }
	#top .altar .block02 .box p { font-size:18px; float:none; padding:20px 0 0; }
	#top .altar .block02 .box .pic img { width:100%; height: auto;  }
	#top .altar .block03 { padding:0; margin:50px 0 0; }
	#top .altar .block04 { padding:0; margin:50px 0 0; }
	#top .altar .block04 .intro { margin:0 0 30px; }
	#top .altar .block04 .group li:last-child p { position:static; }
	#top .altar .block04 .figure { padding:20px 0 0 0; text-align:center; }
	#top .altar .block04 .figure img { width:200px; height: auto; }
	#top .altar .block04 .yamato-logo { width:130px; height: auto }
	#top .altar .group { margin:30px 0 0; }
	#top .altar .group li .pic { margin:15px 0 0; }
	#top .altar .tx img { width: auto; height:16px; }

	#top .close { margin:0; }
	#top .close .sec-inner { padding:20px 12px 50px; }
	
	#top .raihai { margin:0 0 10px; }
	#top .raihai .sec-inner { padding:20px 12px 50px; }

	#top .price { margin:0 0 10px; }
	#top .price .sec-inner { padding:50px 12px; }
	.price .box { padding:30px 12px; margin:30px 0 0; }
	.price .sample { text-align:center; padding:0; margin:20px 0 0; }
	.price .sample p { font-size:18px; line-height:1.6; position:static; margin:20px 0 0; text-align:left; }
	.price .price-list { margin:20px 0 0; }
	.price .price-list p { font-size:18px; padding:10px 20px; }
	.price .price-list th { font-size:18px; padding:15px 20px; }
	.price .price-list td { font-size:18px; padding:20px; }
	.price .price-list td.cell05 { font-size:16px; }
	
	.prpl { padding:10px 20px; margin:20px 0 0; }
	.prpl h3 { font-size:18px; }
	
	.tbl-form th { font-size:18px; padding: 1em; display: block !important }
	.tbl-form td { font-size:18px; padding: 1em; display: block !important }
	.tbl-form td p { font-size: 16px !important }
	
	.scroll_list{ margin: 0 auto; padding: 0; overflow-x: auto;  /* 横スクロールの指定 */ white-space: nowrap;  /* 横スクロールの指定 */ overflow-scrolling: touch;  /* スクロールを滑らかにする */ -webkit-overflow-scrolling: touch;  /* スクロールを滑らかにする */ }

	#top .qa { margin-bottom: 10px }
	#top .qa .sec-inner { padding:50px 12px; }
	#top .qa .big-tit { margin:0 0 30px !important; }
	#top .qa .big-tit img { height:45px; }
	#top .qa ul li { margin:0 0 20px; }
	#top .qa ul li .q { font-size:18px; padding:10px 10px 10px 60px; }
	#top .qa ul li .a { font-size:18px; line-height:1.8; padding:10px 10px 0 60px;  }
	#top .qa ul li .q img { position:absolute; top:12px; left:10px; width: auto; height:30px; width:auto; }
	#top .qa ul li .a img { position:absolute; top:15px; left:10px; width: auto; height:30px; width:auto; }

	#top .voice { margin:0 0 10px; border-top: none }
	#top .voice .sec-inner { padding:50px 12px; }
	#top .voice .box { padding:0; }
	#top .voice .voice-area { padding:20px; }
	#top .voice .voice-area h3.name { font-size:18px; line-height:1.6; margin:0 0 10px; }
	#top .voice .bullets {  margin:40px 0 0; }
	#top .voice .bullets li { display:inline-block; padding:0 10px; }
	#top .voice .bullets li img { width: auto; height:10px; }

	#top .estimate .sec-inner { padding:50px 12px; background-size: 100%; }
	#top .estimate .box { padding:10px; }
	#top .estimate .btn-estimate { margin:30px 0 0; }
	#top .estimate .btn-estimate a { font-size:18px; width:auto; padding:5px; }
	#top .estimate .btn-estimate a span { width:100%; padding:15px 0; }
	h3.order-tit img { width: 103px; height: 30px }
	.btn-submit input[type="submit"],.btn-submit input[type="button"] { width: 80%; color: #fff; border-radius: 10px; }
	.btn-submit input[type="submit"],.btn-submit input[type="button"] { width: 80%; color: #fff; border-radius: 10px; }
	
	#top .about { margin:0 0 10px; }
	#top .about .sec-inner { padding:50px 12px; }
	#top .about .big-tit { margin:0 0 30px !important; }
	#top .about .box { padding: 10px; margin:30px 0 0; }
	#top .about .p-review-form th { vertical-align: top; text-align: left; white-space: inherit }
	#top .about .tbl-form td {  }
	iframe.gmap { width: 100%; height: 100vw }
	
	.f-bnrs a { width: 44vw !important; margin: 0 5px }
	.f-bnrs a img { width: 44vw !important; height: auto }
	
	/* about-close */
	#about-close p { text-align:left; }	
	#about-close .pic p { font-size:18px; margin:8px 0 0; line-height:1.4; }
	#about-close .sec01 { margin:0 0 10px; }
	#about-close .sec01 .sec-inner { padding:20px 12px 40px; }
	#about-close .sec01 .intro { margin:0 0 15px; }
	#about-close .sec01 .flame01 { margin:0 0 50px; }
	#about-close .sec01 .flame02 { margin:0 0 30px; padding:0 0 40px; }
	#about-close .sec01 .flame03 { margin:0 0 30px; padding:0 0 30px; }
	#about-close .sec01 .flame03 .pic p { text-align:center !important; }
	#about-close .sec01 .flame03 .pic img { width:100%; }
	#about-close .sec01 .block01 { padding:0; margin:30px 0 0; }
	#about-close .sec01 .box { margin:15px 0 0; padding:8px 10px; }
	#about-close .sec01 .pic { margin:20px 0 0; }
	#about-close .sec02 { margin:0 0 10px; }
	#about-close .sec02 .sec-inner { padding:40px 12px; }
	#about-close .sec02 .intro { margin:0 0 10px; }
	#about-close .sec02 .pic { margin:15px 0 0; }
	#about-close .sec02 .pic p { text-align:center !important; }
	#about-close .sec02 .pic img { width:100%; height: auto;  }
	#about-close .sec02 .block01 { padding:0; margin:30px 0 0; }
	#about-close .sec03 .sec-inner { padding:40px 12px; }
	#about-close .sec03 .big-tit { margin:0 0 20px; }
	#about-close .sec03 .block01 { padding:0; margin:25px 0 0; }
	#about-close .sec03 .block01 .box { padding:20px; margin:15px 0 0; }
	#about-close .sec03 .block01 th { font-size:18px; }
	#about-close .sec03 .block01 td { font-size:18px; }
	#about-close .sec03 .block01 p { margin:5px 0 0; }
	#about-close .sec03 .block02 { padding:0; margin:30px 0 0; }
	
	#other .sec { margin:0 0 15px; }
	#other .sec .sec-inner { padding: 0 7.72% 90px; }
	
}




@media screen and (max-width: 320px){
	p.intro { font-size:15px; }
	p.intro .notes { font-size:12px; }
	h2.big-tit { margin:0 0 20px; }
	h2.big-tit img { width: auto; height:26px; }
	h3.tit { font-size:20px; margin:0 0 10px; }
	h5 { font-size:14px; }
	
	.group li { margin:0 0 40px; }
	.group li h4 { font-size:16px; }
	
	#top .solution .block02 ul li { font-size:14px; text-indent:-14px; line-height:1.4; }
	#top .solution .block02 ul li h3 img { width: auto; height:20px; }
	#top .solution .block02 ul li:nth-child(3) h3 img { width: auto; height:42px; }
	
	#footer p { font-size:9px; }
}

.txtR { text-align: right !important; }
.txtL { text-align: left !important; }
.txtC { text-align: center !important; }
p.txtR { text-align: right !important; }
p.txtL { text-align: left !important; }
p.txtC { text-align: center !important; }

/**
 * ==============================================
 * Dot Windmill
 * ==============================================
 */
.dot-windmill {
  position: relative;
  top: -8px;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background-color: #ba9c58;
  color: #ba9c58;
  transform-origin: 5px 15px;
  -webkit-animation: dot-windmill 2s infinite linear;
  animation: dot-windmill 2s infinite linear;
}

.dot-windmill::before, .dot-windmill::after {
  content: '';
  display: inline-block;
  position: absolute;
}

.dot-windmill::before {
  left: -8.66px;
  top: 15px;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background-color: #ba9c58;
  color: #ba9c58;
}

.dot-windmill::after {
  left: 8.66px;
  top: 15px;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background-color: #ba9c58;
  color: #ba9c58;
}

@-webkit-keyframes dot-windmill {
  0% {
    transform: rotateZ(0deg) translate3d(0, 0, 0);
  }
  100% {
    transform: rotateZ(720deg) translate3d(0, 0, 0);
  }
}

@keyframes dot-windmill {
  0% {
    transform: rotateZ(0deg) translate3d(0, 0, 0);
  }
  100% {
    transform: rotateZ(720deg) translate3d(0, 0, 0);
  }
}