@charset "utf-8";

.sec-wrap, .sec-header, .sec-content, .sec-footer {	position: relative;	width: 100%; margin: 0;	padding: 0;	box-sizing: border-box; }
.wr { max-width: 1024px; margin: 0 auto; }
.full-wr { max-width: 100%; margin: 0 auto; }

/*=================================================================================
* header
=================================================================================*/
.sec-header { }
.sec-header .wr { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; align-items: center; height: 120px; }
.nav { background-color: #B41110; position: relative; }
.nav::before { content: ""; width: 100%; height: 10px; background-color: #D2706B; position: absolute; left: 0; bottom: -10px; }
.nav > ul { display: flex; width: 1024px; margin: 0 auto; justify-content: space-between; padding: 15px 0; background: url("../img/nav_line.svg") 0 50% no-repeat; }
.nav > ul > li { width: 20%; background: url("../img/nav_line.svg") 100% 100% no-repeat; }
.nav > ul > li > a { color: #fff; font-size: 12px; text-align: center; display: block; width: 100%; height: 100%; }
.nav > ul > li > a:hover, .nav > ul > li > a.active { color: #FFD200; }
.nav > ul > li > a span { font-size: 16px; display: block; margin-top: -5px; }
.right-link { display: flex; }
.ect { display: flex; flex-wrap: wrap; justify-content: space-between; width: 230px; margin-right: 20px; }
.ect span a { font-size: 12px; position: relative; padding-left: 10px; }
.ect span a::before { content: ""; width: 4px; height: 6px; position: absolute; top: 4px;  left: 0; background: url("../img/arrow_small_d.svg") no-repeat; }
.ect span a.text-white { color: #fff; }
.ect span a.text-white::before { content: ""; width: 4px; height: 6px; position: absolute; top: 5px;  left: 0; background: url("../img/arrow_small_w.svg") no-repeat;}
.btn-category { display: none; }

/*=================================================================================
* main
=================================================================================*/
#main {  }
#main .main-tit { font-size: 34px; color: #fff;	font-weight: 700; text-align: center; line-height: 1.5;	margin: 0 0 60px; }
#main .main-visual { position: relative; height: 520px;	background: url("../img/main_visual_bg.jpg") center no-repeat; background-size: cover; margin-top: 10px; }
#main .main-visual::after { content: ""; position: absolute;  width: 100%; height: 10px; left: 0; bottom: -10px; background-color: #F0F0F0; }
#main .main-visual .slide-text { position: absolute; height: 100%; left: 50%; top: 50%; transform: translate(-50%, -50%); width: 1024px; z-index: 2; color: #fff; }
#main .main-visual .slide-text .text-01 { margin-top: 100px; }
#main .main-visual .slide-text .text-02 { margin: 30px 0 0 50px; }
#main .main-visual .slide-text .text-03 { margin: 25px 0 0 50px; }
#main .main-visual .slide-text .text-04 { margin: 30px 0 0 50px; }
#main .main-visual .slide-text .product-01 { position: absolute; right: 210px; bottom: 0; }
#main .main-visual .slide-text .product-02 {  position: absolute; right: 20px; bottom: 0; }

/* cont 01 */
#main .cont-01 { border-bottom: solid 10px #333; }
#main .cont-01 h3 { color: #C61618; font-size: 27px; font-weight: 700; margin-top: 70px; border-bottom: solid 1px #C61618; padding-bottom: 10px; }
#main .cont-01 h5 { margin-top: 80px; background-color: #f7f7f7; padding: 5px 0 5px 10px; font-size: 21px; }
#main .cont-01 { position: relative; }
#main .cont-01 .wr { padding: 100px 0 150px; }
#main .cont-01 .wr ul { margin-bottom: 80px; }
#main .cont-01 .wr ul li { margin: 0 10px; }
#main .cont-01 .wr ul li h4 { font-size: 18px; color: #C61618; font-weight: 700; margin: 20px 0; width: 100%; text-align: center; }
#main .cont-01 .wr ul li p { font-size: 15px; text-align: center; }
#main .cont-01 .wr .estimate { width: 450px; margin: 0 auto; }
#main .cont-01 .wr span { width: 100%; padding: 30px 0 0; text-align: center; }
#main .cont-01 .wr span img { width: 124px; }
#main .cont-01 .wr .step { padding-top: 0; display: flex; align-items: center; justify-content: center; font-weight: 500; color: #C61618; }
#main .cont-01 .wr .step em { font-size: 24px; margin-left: 5px; }
#main .cont-01 .wr ul li.arrow { position: relative; }
#main .cont-01 .wr ul li.arrow::after { content: ""; width: 14px; height: 20px; background: url("../img/arrow_medium_r.svg") 50% 50% no-repeat; position: absolute; right: -20px; top: 28%; }
#main .cont-02 { background: url("../img/main_content_bg_01.jpg") 50% 50% no-repeat; height: 830px; background-size: cover; position: relative; border-bottom: solid 10px #333; }
#main .cont-02 .text-box { position: absolute; width: 400px; padding: 40px 30px 50px; background-color: #fff; border-radius: 15px; top: 50%; left: 50%; transform: translateY(-50%); margin-left: -400px; }
#main .cont-02 .text-box h3 { background-color: #F0F0F0; font-size: 21px; padding: 12px 18px; margin-bottom: 25px; border-radius: 10px; }
#main .cont-02 .text-box p { margin-bottom: 30px; }
#main .cont-03 { background: url("../img/main_content_bg_02.jpg") 50% 50% no-repeat; height: 830px; background-size: cover; position: relative; border-bottom: solid 10px #333; }
#main .cont-03 .text-box { position: absolute; width: 400px; padding: 40px 30px 50px; background-color: #fff; border-radius: 15px; top: 50%; right: 50%; transform: translateY(-50%); margin-right: -400px; }
#main .cont-03 .text-box h3 { background-color: #F0F0F0; font-size: 21px; padding: 12px 18px; margin-bottom: 25px; border-radius: 10px; }
#main .cont-03 .text-box p { margin-bottom: 30px; }

#sub h2 { margin: 100px 0 50px; text-align: center; width: 100%; font-size: 40px; color: #C61618; position: relative; padding-bottom: 24px; }
#sub h2::before { content: ""; position: absolute; left: 50%; top: 68px; width: 55px; height: 1px; background-color: #121212; transform: translateX(-50%); }
#sub h2 span { display: block; font-size: 18px; color: #333; margin-top: 25px;}
#sub .estimate { width: 450px; margin: 0 auto; }
#sub .cont-01 { padding: 0 0 100px; }
#sub .cont-01 h3, #sub .cont-05 h3 { color: #C61618; font-size: 24px; width: 100%; border-bottom: solid 1px #C61618; padding-bottom: 10px; margin-bottom: 50px; }
#sub .cont-01 ul.product { margin-bottom: 70px; }
#sub .cont-01 ul.product span { font-size: 20px; color: #C61618; }
#sub .cont-01 ul.product li { text-align: center; }
#sub .cont-01 ul.product li .thumb { border: solid 1px #e1e1e1; margin-bottom: 20px; border-radius: 10px; text-align: center; }
#sub .cont-01 ul li { padding: 0 20px; margin-bottom: 70px; }
#sub .cont-01 ul li h4 { background-color: #F0F0F0; padding: 7px 10px; border-radius: 3px; font-size: 21px; }
#sub .cont-02 { padding: 0 0 100px; }
#sub .cont-02 .reference_thumb { padding: 0; }
#sub .cont-02 .reference_thumb ul li { padding: 0 30px; }
#sub .cont-02 .reference_thumb ul li img { border-radius: 10px; }
#sub .cont-02 .reference_thumb ul li .thumb { margin-bottom: 20px; overflow: hidden; height: 175px; border-radius: 15px; text-align: center; }
#sub .cont-02 .reference_thumb ul li .info-box { }
#sub .cont-02 .reference_thumb ul li .info-box dd { display: flex; margin-bottom: 5px; padding-bottom: 5px; border-bottom: solid 1px #e1e1e1; color: #666; }
#sub .cont-02 .reference_thumb ul li .info-box dd span:nth-child(1) { width: 60px; color: #121212; }
#sub .cont-02 .reference_btn { border-top: solid 1px #e1e1e1; padding: 50px 0; margin-top: 50px; }
#sub .cont-02 .reference_btn ul li { margin: 20px 0; }
#sub .cont-04 { padding: 0 0 100px; }
#sub .cont-04 ul li { padding: 0 20px; }
#sub .cont-04 ul li h3 { font-size: 21px; color: #C61618; padding-bottom: 10px; border-bottom: solid 1px #C61618; }
#sub .cont-04 ul li div { text-align: center; padding: 20px 0; }
#sub .cont-04 ul li div img { width: 50%; }
#sub .cont-05 { padding: 0 0 100px; }
#sub .cont-05 .tabs { display: flex; }
#sub .cont-05 .tabs li { width: 48%; margin: 0 1% 50px; text-align: center; }
#sub .cont-05 .tabs li a { color: #666; width: 100%; height: 100%; display: block; border: solid 1px #e1e1e1; padding: 10px 0; border-radius: 10px; }
#sub .cont-05 .tabs li a:hover, #sub .cont-05 .tabs li a.active { background-color: #C61618; color: #fff; border: solid 1px #C61618; }
#sub .cont-05 .inner-box-01, #sub .cont-05 .inner-box-02, #sub .cont-05 .inner-box-03, #sub .cont-05 .inner-box-04, #sub .cont-05 .inner-box-05, #sub .cont-05 .inner-box-07, #sub .cont-05 .inner-box-09, #sub .cont-05 .inner-box-10, #sub .cont-05 .inner-box-12, #sub .cont-05 .inner-box-13 { position: relative; width: 1024px; height: 650px; background-size: cover; margin-bottom: 50px; }
#sub .cont-05 .inner-box-01 { background: url("../img/sales_bg_01.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-02 { background: url("../img/sales_bg_02.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-03 { background: url("../img/sales_bg_03.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-04 { background: url("../img/sales_bg_04.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-05 { background: url("../img/sales_bg_05.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-07 { background: url("../img/sales_bg_06.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-09 { background: url("../img/sales_bg_07.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-10 { background: url("../img/sales_bg_08.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-12 { background: url("../img/sales_bg_10.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .inner-box-13 { background: url("../img/sales_bg_11.jpg") no-repeat; background-size: cover; }
#sub .cont-05 .text-box { position: absolute; width: 400px; padding: 40px 30px 50px; background-color: #fff; border-radius: 15px; top: 50%; left: 50%; transform: translateY(-50%); margin-left: -400px; }
#sub .cont-05 .text-box h3 { background-color: #F0F0F0; font-size: 21px; padding: 12px 18px; margin-bottom: 25px;  border-bottom: none; border-radius: 10px; color: #121212; }
#sub .cont-05 .text-box-02 { width: 60%; }
#sub .cont-05 .text-box-02 h4 { font-size: 24px; padding: 70px 0 40px; }
#sub .cont-05 .text-box-02 ul { width: 100%; }
#sub .cont-05 .text-box-02 ul li { display: flex; font-size: 15px; padding-right: 50px; }
#sub .cont-05 .text-box-02 ul li .thumb { width: 20%; margin-right: 20px; }
#sub .cont-05 .text-box-02 ul li span { width: 80%; }
#sub .cont-05 .text-box-03 { width: 50%;  position: absolute; left: 45%; padding: 50px 0 0; }
#sub .cont-05 .text-box-03 strong, #sub .cont-05 .text-box-04 strong, #sub .cont-05 .text-box-05 strong, #sub .cont-05 .text-box-09 strong, #sub .cont-05 .text-box-10 strong, #sub .cont-05 .text-box-13 strong  { display: block; font-size: 19px; margin-bottom: 27px; }
#sub .cont-05 .text-box-03 .sub-tit, #sub .cont-05 .text-box-04 .sub-tit, #sub .cont-05 .text-box-05 .sub-tit, #sub .cont-05 .sub-tit, #sub .cont-05 .text-box-09 .sub-tit, #sub .cont-05 .text-box-10 .sub-tit, #sub .cont-05 .text-box-13 .sub-tit { font-size: 22px; margin-bottom: 32px; }
#sub .cont-05 .text-box-03 p, #sub .cont-05 .text-box-04 p, #sub .cont-05 .text-box-05 p, #sub .cont-05 .text-box-09 p, #sub .cont-05 .text-box-10 p, #sub .cont-05 .text-box-13 p { font-size: 15px; }
#sub .cont-05 .text-box-03 ul { width: 100%; margin-top: 20px; }
#sub .cont-05 .text-box-03 ul li { padding: 5px 10px 5px 0 ; margin-bottom: 0; }
#sub .cont-05 .text-box-03 ul li div { background-color: #fff; border-radius: 15px; display: flex; flex-direction: column; align-items: center; justify-content:center; text-align: center; height: 100px; }
#sub .cont-05 .text-box-03 ul li div strong { margin-bottom: 10px; }
#sub .cont-05 .text-box-03 ul li div span { font-size: 13px; }
#sub .cont-05 .text-box-04 { width: 52%; margin-left: 70px; color: #fff; padding: 50px 0 0; }
#sub .cont-05 .text-box-04 ul { width: 100%; margin-top: 70px; }
#sub .cont-05 .text-box-04 ul li span:nth-child(2) { margin-top: -45px; }
#sub .cont-05 .text-box-05 { width: 52%; margin-left: 70px; padding: 50px 0 0; }
#sub .cont-05 .text-box-05 ul { width: 100%; margin-top: 30px; }
#sub .cont-05 .text-box-05 ul li .thumb { width: 30%; margin-right: 20px; }
#sub .cont-05 .text-box-05 ul li span { font-size: 20px; font-weight: 500; }
#sub .cont-05 .text-box-05 ul li span em { display: block; font-weight: 400; font-size: 15px; }
#sub .cont-05 .inner-box-06 { margin-bottom: 50px; }
#sub .cont-05 .inner-box-06 h3 { border-bottom: none; text-align: center; font-size: 22px; color: #121212; }
#sub .cont-05 .inner-box-06 ul li { display: flex; flex-direction: column; align-items: center; }
#sub .cont-05 .inner-box-06 ul li strong { font-size: 22px; color: #C61618; margin-bottom: 20px; }
#sub .cont-05 .inner-box-07 { }
#sub .cont-05 .text-box-07 { position: absolute; width: 400px; padding: 40px 30px 50px; background-color: #fff; border-radius: 15px; top: 50%; left: 50%; transform: translateY(-50%); }
#sub .cont-05 .text-box-07 h3 { background-color: #F0F0F0; font-size: 21px; padding: 12px 18px; margin-bottom: 25px;  border-bottom: none; border-radius: 10px; color: #121212; }
#sub .cont-05 .inner-box-08 { margin-bottom: 50px; }
#sub .cont-05 .inner-box-08 h3 { border-bottom: none; font-size: 22px; color: #121212; text-align: center; }
#sub .cont-05 .text-box-08 ul li { display: flex; font-size: 15px; padding-right: 50px; align-items: center; }
#sub .cont-05 .text-box-08 ul li .thumb { width: 30%; margin-right: 20px; }
#sub .cont-05 .text-box-08 ul li span { font-size: 15px; width: 70%; }
#sub .cont-05 .inner-box-08 .mov-box { margin-bottom: 50px; height: 640px;  }
#sub .cont-05 .inner-box-09 { }
#sub .cont-05 .text-box-09 { width: 50%;  position: absolute; left: 45%; padding: 50px 0 0; }
#sub .cont-05 .text-box-09 ul { width: 100%; margin-top: 20px; }
#sub .cont-05 .text-box-09 ul li { padding: 5px 10px 5px 0 ; margin-bottom: 0; }
#sub .cont-05 .text-box-09 ul li div { background-color: #fff; border-radius: 15px; display: flex; flex-direction: column; align-items: center; justify-content:center; text-align: center; height: 100px; }
#sub .cont-05 .text-box-09 ul li div strong { margin-bottom: 10px; }
#sub .cont-05 .text-box-09 ul li div span { font-size: 13px; }
#sub .cont-05 .inner-box-10 { }
#sub .cont-05 .text-box-10 { width: 52%; margin-left: 70px; color: #fff; padding: 50px 0 0; }
#sub .cont-05 .text-box-10 ul { width: 100%; margin-top: 70px; }
#sub .cont-05 .text-box-10 ul li span:nth-child(2) { margin-top: -45px; }
#sub .cont-05 .inner-box-11 { margin-bottom: 50px; }
#sub .cont-05 .inner-box-11 h3 { border-bottom: none; font-size: 20px; text-align: center; color: #121212; padding-bottom: 0; }
#sub .cont-05 .inner-box-11 p { font-size: 22px; display: block; text-align: center; margin-bottom: 28px; }
#sub .cont-05 .inner-box-11 span { display: block; text-align: center; margin-bottom: 55px; }
#sub .cont-05 .text-box-12 { width: 80%; padding: 50px 0 0; margin: 0 auto; color: #fff; }
#sub .cont-05 .text-box-12 h3 { border-bottom: none; font-size: 20px; text-align: center; color: #fff; margin-bottom: 25px; padding-bottom: 0; }
#sub .cont-05 .text-box-12 p { font-size: 22px; display: block; text-align: center; margin-bottom: 28px; }
#sub .cont-05 .text-box-12 span { display: block; text-align: center; margin-bottom: 55px; }
#sub .cont-05 .inner-box-13 { }
#sub .cont-05 .text-box-13 { width: 50%;  position: absolute; left: 70px; padding: 50px 0 0; }
#sub .cont-05 .text-box-13 ul { width: 100%; margin-top: 20px; }
#sub .cont-05 .text-box-13 ul li { padding: 5px 10px 5px 0 ; margin-bottom: 0; }
#sub .cont-05 .text-box-13 ul li div { background-color: #fff; border-radius: 15px; display: flex; flex-direction: column; align-items: center; justify-content:center; text-align: center; height: 100px; }
#sub .cont-05 .text-box-13 ul li div strong { margin-bottom: 10px; }
#sub .cont-05 .text-box-13 ul li div span { font-size: 13px; }
#sub .cont-05 .inner-box-14 { }
#sub .cont-05 .inner-box-14 { margin-bottom: 50px; }
#sub .cont-05 .inner-box-14 h3 { border-bottom: none; font-size: 20px; text-align: center; color: #121212; }
#sub .cont-05 .inner-box-14 span { display: block; text-align: center; margin-bottom: 55px; }
#sub .privacy-wr { padding-bottom: 100px; }
#sub .privacy-wr ul li { margin-top: 30px; }
#sub .privacy-wr ul li p { padding-left: 17px; }
#sub .privacy-wr ul li span { padding-left: 30px; }
#sub .company-wr { padding-bottom: 100px; border-top: solid 1px #e1e1e1; padding-top: 10px; }
#sub .company-wr dl { display: flex; align-items: center; margin-bottom: 10px; padding-bottom: 10px; border-bottom: solid 1px #e1e1e1; }
#sub .company-wr dl dt { padding: 10px 0; background-color: #333; color: #fff; width: 120px; text-align: center; border-radius: 5px; }
#sub .company-wr dl dd { padding-left: 50px; }
#sub .company-wr dl dd span { display: block; }
#sub .contact-wr { padding-bottom: 100px; }
#sub .contact-wr p { margin-bottom: 30px; }
#sub .contact-wr dl { display: flex; align-items: center; margin-bottom: 10px; padding-bottom: 10px; border-bottom: solid 1px #e1e1e1; border-top: solid 1px #e1e1e1; padding-top: 10px; }
#sub .contact-wr dl dt { padding: 10px 0 10px 10px; background-color: #f7f7f7; width: 20%; border-radius: 5px; }
#sub .contact-wr dl dd { padding-left: 30px; width: 80%; }
#sub .contact-wr dl dd .w40 { width: 40%; }
#sub .contact-wr dl dd textarea { width: 100%; height: 300px; margin-bottom: 10px; }
#sub .contact-wr dl dd select { padding: 5px; border: 1px solid #ebebeb; font-size: 16px; }
#sub .contact-wr dl dd span { margin-right: 10px; }
#sub .contact-wr dl dd span.tiptext { padding-left: 10px; font-size: 14px; color: #777; }
#sub .contact-wr .flex { align-items: center; }
#sub .contact-wr .contact-ps { display: flex; margin-bottom: 50px; justify-content: space-between; }
#sub .contact-wr .contact-ps span { width: 30%; text-align: center; background-color: #f7f7f7; padding: 10px; border-radius: 10px; position: relative; }
#sub .contact-wr .contact-ps span::after { content:""; position: absolute; width: 12px; height: 22px; background: url("../img/cont_arrow.svg") no-repeat; right: -30px; top: 12px; }
#sub .contact-wr .contact-ps span:last-child::after { background: none; }
#sub .contact-wr em { font-size: 13px; background-color: #D7092F; padding: 3px 7px; color: #fff; border-radius: 5px; margin-right: 5px;  }
#sub .contact-wr .btn-wrap {  text-align: center; margin-top: 50px; }

/* flex */
.flex { display: flex; width: 100%; }
.flex.flexwrap { flex-wrap: wrap; }
.flex.flexwrap li { margin-bottom: 80px; }
.flex .col-1 { width: 8.33333%; }
.flex .col-2 { width: 16.66667%; }
.flex .col-3 { width: 25%; }
.flex .col-4 { width: 33.33333%; }
.flex .col-5 { width: 41.66667%; }
.flex .col-6 { width: 50%; }
.flex .col-7 { width: 58.33333%; }
.flex .col-8 { width: 66.66667%; }
.flex .col-9 { width: 75%; }
.flex .col-10 { width: 83.33333%; }
.flex .col-11 { width: 91.66667%; }
.flex .col-12 { width: 100%; }

/* margin */
.mb50 { margin-bottom: 50px!important; }
.mb20 { margin-bottom: 20px!important; }

/*=================================================================================
* footer
=================================================================================*/
.sec-footer { font-size: 14px; }
.sec-footer .wr { position: relative; }
.content { text-align: center; padding: 70px 0; }
.content h3 { margin-bottom: 25px; }
.content p { font-size: 18px; font-weight: 400;}
.content span { font-size: 15px; display: block; }
.content .tel { display: none; }
.link { background-color: #FFF5E2; padding: 35px 0 53px; }
.link ul { width: 1024px; margin: 0 auto; display: flex; justify-content: space-between; }
.link ul li { display: flex; flex-direction: column; }
.link ul li a { font-size: 15px; color: #C61618; text-decoration: underline; font-weight: bold; line-height: 30px; position: relative; padding-left: 20px; }
.link ul li a::before { content: "■"; position: absolute; left: 0; font-size: 12px; }
.link ul li a.none::before { display: none; }
.link ul li a span { font-size: 14px; color: #333; font-weight: normal; }
.copy { background: #C61618; color: #fff; height: 65px; text-align: center; }
.copy span { padding: 20px; }
.serviceinfo-wr { background-color: #FFF5E2; padding: 100px 0; }
.serviceinfo-wr .text-box { width: 1000px; margin: 0 auto; }
.serviceinfo-wr .text-box .cont04-bg { width: 100%; height: 210px; background: url("../img/main_content_bg_03.jpg") no-repeat; background-size: cover; border-radius: 15px 15px 0 0; position: relative; }
.serviceinfo-wr .text-box .cont04-bg span { position: absolute; left: 50%; bottom: -20px; transform: translateX(-50%); width: 200px; padding: 15px 0; text-align: center; background-color: #121212; border-radius: 15px; color: #fff; font-size: 21px; }
.serviceinfo-wr .text-box .info-text { background-color: #fff; border-radius: 0 0 15px 15px; padding: 60px 75px; }
.serviceinfo-wr .text-box .info-text .inner-box { height: 250px; overflow-y: scroll; font-size: 14px; }
.serviceinfo-wr .text-box .info-text .inner-box strong { display: block; margin-bottom: 15px; font-weight: 400; }
.serviceinfo-wr .text-box .info-text .inner-box span { display: block; margin-bottom: 15px; color: #C61618; }
.serviceinfo-wr .text-box .info-text .inner-box p { margin-bottom: 30px; }

/*=================================================================================
* sub
=================================================================================*/
.sub-visual {
	width: 100%;
	position: relative;
	overflow: hidden;
}
.sub-visual:after { content: ''; width: 100%; height: 100%; position: absolute;	left: 0; top: 0; z-index: -1; background-size: cover; background-position: center center; 
	animation-duration: 3s; animation-fill-mode: both; animation-iteration-count: 1; animation-timing-function: ease; -webkit-animation-duration: 3s; -webkit-animation-fill-mode: both; -webkit-animation-iteration-count: 1;
	-webkit-animation-timing-function: ease; animation-delay: 0.4s;	-webkit-animation-delay: 0.4s; animation-name: visual-zoom;	-webkit-animation-name: visual-zoom; }
.subv-1:after {	background-image: url('../img/sub_visual_01.jpg'); }
.sub-visual h1 { font-size: 32px; color: #fff; padding: 200px 20px;	text-align: center;	font-weight: 400; }
.sub-visual h1 span, .sub-visual h1 p {	animation-duration: 0.7s; animation-fill-mode: both; animation-iteration-count: 1; animation-timing-function: ease;	-webkit-animation-duration: 0.7s; -webkit-animation-fill-mode: both;
	-webkit-animation-iteration-count: 1; -webkit-animation-timing-function: ease; animation-delay: 0.3s; -webkit-animation-delay: 0.3s; animation-name: visual-tit; -webkit-animation-name: visual-tit; }
@keyframes visual-zoom {
	0% {
		transform: scale(1.2);
	}
	100% {
		transform: scale(1);
	}
}
@-webkit-keyframes visual-zoom {
	0% {
		transform: scale(1.2);
	}
	100% {
		transform: scale(1);
	}
}
@keyframes visual-tit {
	0% {
		opacity: 0;
		-webkit-opacity: 0;
		transform: translateY(20px);
	}
	100% {
		opacity: 1;
		-webkit-opacity: 1;
		transform: translateY(0px);
	}
}
@-webkit-keyframes visual-tit {
	0% {
		opacity: 0;
		-webkit-opacity: 0;
		transform: translateY(20px);
	}
	100% {
		opacity: 1;
		-webkit-opacity: 1;
		transform: translateY(0px);
	}
}
@keyframes sub-tab-line {
	0% {
		width: 0%;
		left: 50%;
	}
	100% {
		width: 100%;
		left: 0;
	}
}
@-webkit-keyframes sub-tab-line {
	0% {
		width: 0%;
		left: 50%;
	}
	100% {
		width: 100%;
		left: 0;
	}
}
/*=================================================================================
* common
=================================================================================*/
/* btm */
.btn { display: flex; align-items: center; padding: 10px 0!important; text-align: center; justify-content: center; border-radius: 7px; margin-bottom: 20px; }
.btn.full { width: 100%; }
.btn.orange { background-color: #FF7427; }
.btn.green { background-color: #30AC29; }
.text-white { color: #fff; position: relative; padding-left: 10px; }
 a.text-white::before { content: ""; width: 4px; height: 6px; position: absolute; top: 8px;  left: 0; background: url("../img/arrow_small_w.svg") no-repeat;}
#sitemap { display: none; }
@media screen and (max-width:768px){
	.sec-header h1 { width: 210px; margin-left: 20px; }
	.sec-header .wr { height: 70px; }
	.wr { width: 100%; max-width: 100%; }
	.nav, .right-link { display: none; }
	.btn-category { display: block; position:absolute; top:27px; right:20px; width:40px; height:24px; cursor:pointer; }
	.btn-category .bar { position: absolute; left:0; width:100%; height:3px; border:0; background:#121212; transition:opacity 0.3s, top 0.3s, transform 0.5s; transition-delay:0.3s, 0.3s, 0s; border-radius: 0 0 0 10px; }
	.on .btn-category .bar { background:#000; }
	.btn-category .bar:nth-child(1) { top:0; transform:rotate(0); }
	.btn-category .bar:nth-child(2) { top:11px; opacity:1; }
	.btn-category .bar:nth-child(3) { top:22px; transform:rotate(0); } 
	.btn-category.map { right:20px; }
	.btn-category.map .bar { background:#000; transition:background 1s, opacity 0.3s, top 0.3s, transform 0.5s; transition-delay:0s, 0s, 0s, 0.3s; }
	.btn-category.map .bar:nth-child(1) { top:11px; background:#000; transform:rotate(-45deg); }
	.btn-category.map .bar:nth-child(2) { opacity:0; }
	.btn-category.map .bar:nth-child(3) { top:11px; background:#000; transform:rotate(45deg); }
	#sitemap { display: block; position:fixed; top:70px; right:-100%; width:100%; height:calc(100% - 100px); background:#fff; padding:20px; z-index:10;transition:all ease .5s; -webkit-transition:all ease .5s; -o-transition:all ease .5s; -moz-transition:all ease .5s; -ms-transition:all ease .5s; overflow: hidden; overflow-y:auto; }
	#sitemap > ul { max-width:1024px; overflow:hidden; margin:0 auto; }
	#sitemap > ul > li { padding:20px 10px; text-align: center; }
	#sitemap > ul > li h2 { font-size:21px; color:#333; }
	#sitemap > ul > li h2 > a:hover { color:#C61618; }
	#sitemap > ul > li h2 > a span { margin: 0 0 0 10px; font-size: 18px; font-weight: normal; }
	#sitemap span { display: block; margin: 10px 0; text-align: center; }
	#sitemap.open { right:0; }
	#main .main-visual .slide-text { width: 100%; }
	#main .main-visual .slide-text .text-01 { margin-top: 40px;  padding-left: 20px; }
	#main .main-visual .slide-text .text-01 img { max-width: 60%; }
	#main .main-visual .slide-text .text-02 { margin: 20px 0 10px 50px; }
	#main .main-visual .slide-text .text-02 img { max-width: 80%; }
	#main .main-visual .slide-text .text-03 { margin: 10px 0 0 50px; }
	#main .main-visual .slide-text .text-03 img { max-width: 90%; }
	#main .main-visual .slide-text .text-04 { margin: 10px 0 0 50px; }
	#main .main-visual .slide-text .text-04 img { max-width: 80%; }
	#main .main-visual .slide-text .product-01, #main .main-visual .slide-text .product-02 { width: 80px; }
	#main .main-visual .slide-text .product-01 { right: 110px; }
	#main .cont-01 .wr { padding: 50px 20px 70px; }
	#main .cont-01 h3 { font-size: 18px; margin-top: 50px; }
	#main .cont-01 .wr .estimate { width: 100%; }
	#main .cont-01 .wr ul li h4 { font-size: 16px; margin: 10px 0; }
	#main .cont-01 .wr ul li p { font-size: 13px; }
	#main .cont-01 .wr ul { margin-bottom: 30px; flex-direction: column; }
	#main .cont-01 .wr ul li  { width: 96%; }
	#main .cont-01 .wr span img { width: 94px; }
	#main .cont-01 .wr ul li.arrow::after { display: none; }
	#main .cont-01 h5 { font-size: 17px; }
	#main .cont-02, #main .cont-03 { background-position: 100% 100%; height: 560px; background-size: 100%; position: relative;}
	#main .cont-02 .text-box, #main .cont-03 .text-box { width: 100%; margin-left: 0; transform: none; padding: 20px; top: 0; left: 0; border-radius: 0; }
	#main .cont-02 .text-box h3, #main .cont-03 .text-box h3 { font-size: 17px; }
	#main .cont-02 .text-box p, #main .cont-03 .text-box p { font-size: 13px; }
	.serviceinfo-wr .text-box { width:94%; }
	.serviceinfo-wr { padding: 50px 0; }
	.serviceinfo-wr .text-box .cont04-bg { height: 100px; }
	.serviceinfo-wr .text-box .cont04-bg span { font-size: 17px; }
	.serviceinfo-wr .text-box .info-text { padding: 50px 20px 30px; }
	.content h3 img { width: 80%; }
	.link ul { width: 100%; flex-direction: column; padding-left: 40px; }
	.link ul li a { font-size: 13px; }
	.content { padding: 35px; }
	.content .tel { display: block; margin-top: 20px;}
	#sub h2 { margin-top: 50px; font-size: 32px; }
	#sub h2::before { top: 57px; }
	#sub .cont-01 { padding: 0 20px 50px; }
	#sub .cont-01 h3, #sub .cont-05 h3 { font-size: 18px; }
	#sub .cont-01 ul.product li { width: 100%; }
	#sub .cont-01 ul.product li .thumb img { max-width: 50%; }
	#sub .cont-01 ul.product span { font-size: 16px; }
	#sub .cont-01 ul li { margin-bottom: 50px; width: 100%; }
	#sub .estimate { width: 90%; }
	#sub .estimate .text-white { font-size: 13px; }
	#sub .cont-01 ul li h4 { font-size: 17px; }
	#sub .cont-01 ul li span { font-size: 13px; }
	#sub .privacy-wr, #sub .company-wr, #sub .contact-wr { padding: 0 20px 100px; }
	#sub .company-wr { border: 0; }
	#sub .company-wr dl, #sub .contact-wr dl { flex-direction: column; border: 0; }
	#sub .company-wr dl dt, #sub .company-wr dl dd, #sub .contact-wr dl dt, #sub .contact-wr dl dd { width: 100%; }
	#sub .company-wr dl dt, #sub .contact-wr dl dt { margin-bottom: 20px;}
	#sub .company-wr dl dd, #sub .contact-wr dl dd { padding-left: 0; }
	#sub .contact-wr .contact-ps { width: 96%; }
	#sub .contact-wr .contact-ps span { width: 22%; }
	#sub .contact-wr .contact-ps span::after { top: 52px; }
	#sub .contact-wr dl dd span { display: block; }
	#sub .contact-wr dl dd span.tiptext { padding: 5px 0; }
	.btn-wrap .btn .text-white { padding: 0 10px; }
	#sub .cont-02, #sub .cont-03, #sub .cont-04 { padding: 0 0 50px; }
	#sub .cont-02 .reference_thumb ul li { width: 100%; margin-bottom: 20px; }
	#sub .cont-02 .reference_btn ul li { margin: 0; }
	#sub .cont-02 .reference_btn { padding: 30px 0 0; }
	#sub .cont-05 { padding: 0 20px 50px; }
	#sub .cont-05 .inner-box-01, #sub .cont-05 .inner-box-02, #sub .cont-05 .inner-box-03, #sub .cont-05 .inner-box-04, #sub .cont-05 .inner-box-05, #sub .cont-05 .inner-box-06, #sub .cont-05 .inner-box-07, #sub .cont-05 .inner-box-08, #sub .cont-05 .inner-box-09, #sub .cont-05 .inner-box-10, #sub .cont-05 .inner-box-11, #sub .cont-05 .inner-box-12, #sub .cont-05 .inner-box-13, #sub .cont-05 .inner-box-14 { width: 100%;}
	#sub .cont-05 .text-box h3 { font-size: 17px; }
	#sub .cont-05 .text-box p { font-size: 13px; }
	#sub .cont-05 .inner-box-01 { background-position: 100% 100%; height: 445px; background-size: 100%; position: relative; }
	#sub .cont-05 .text-box { width: 100%; margin-left: 0; transform: none; padding: 0; top: 0; left: 0; }
	#sub .cont-05 .inner-box-02 { height: auto; background-size: 260%; background-position: 58% 100%; margin-bottom: 20px; }
	#sub .cont-05 .text-box-02 ul { flex-direction: column; }
	#sub .cont-05 .text-box-02 { width: 100%; }
	#sub .cont-05 .text-box-02 h4 { padding: 0 0 40px; font-size: 21px; line-height: 24px; }
	#sub .cont-05 .text-box-02 ul li { width: 70%; padding-right: 10px; margin-bottom: 20px; }
	#sub .cont-05 .text-box-02 ul li .thumb { width: 26%; }
	#sub .cont-05 .text-box-02 ul li span { width: 74%; font-size: 13px; }
	#sub .cont-05 .inner-box-03 { background-position: 100% 0; background-size: 100%; background-color: #e1e1e1; height: 710px; }
	#sub .cont-05 .text-box-03 { width: 100%; left: 0; padding: 65px 20px; }
	#sub .cont-05 .text-box-03 strong { padding-left: 135px; }
	#sub .cont-05 .text-box-03 .sub-tit { padding-left: 135px; padding-top: 0; font-size: 16px!important; }
	#sub .cont-05 .text-box-03 p { padding-top: 61px; }
	#sub .cont-05 .text-box-03 ul li { padding: 5px; }
	#sub .cont-05 .text-box-03 ul li div span { font-size: 11px; }
	#sub .cont-05 .text-box-03 ul li div strong { padding-left: 0; }
	#sub .cont-05 .text-box-03 strong, #sub .cont-05 .text-box-04 strong, #sub .cont-05 .text-box-05 strong, #sub .cont-05 .text-box-09 strong, #sub .cont-05 .text-box-10 strong, #sub .cont-05 .text-box-13 strong { font-size: 16px; }
	#sub .cont-05 .text-box-03 .sub-tit, #sub .cont-05 .text-box-04 .sub-tit, #sub .cont-05 .text-box-05 .sub-tit, #sub .cont-05 .sub-tit, #sub .cont-05 .text-box-09 .sub-tit, #sub .cont-05 .text-box-10 .sub-tit, #sub .cont-05 .text-box-13 .sub-tit { font-size: 18px; margin-bottom: 10px;}
	#sub .cont-05 .text-box-03 p, #sub .cont-05 .text-box-04 p, #sub .cont-05 .text-box-05 p, #sub .cont-05 .text-box-09 p, #sub .cont-05 .text-box-10 p, #sub .cont-05 .text-box-13 p { font-size: 13px; }
	#sub .cont-05 .inner-box-04 { height: auto; background-size: 100%; background-color: #333; }
	#sub .cont-05 .text-box-04 { width: 100%; margin-left: 0; padding: 50px 20px;  }
	#sub .cont-05 .text-box-04 ul li span:nth-child(2) { margin-top: -30px; font-size: 11px; }
	#sub .cont-05 .inner-box-05 { height: auto; }
	#sub .cont-05 .text-box-05 { width: 100%; margin-left: 0; padding: 50px 20px; }
	#sub .cont-05 .text-box-05 ul li .thumb { width: 80%; margin-right: 0; }
	#sub .cont-05 .text-box-05 ul li { text-align: center; margin-bottom: 20px; }
	#sub .cont-05 .text-box-05 ul li span { width: 100%; font-size: 15px; }
	#sub .cont-05 .inner-box-06 ul li strong { font-size: 13px; }
	#sub .cont-05 .inner-box-06 ul li span { font-size: 11px; }
	#sub .cont-05 .inner-box-07 {  background-position: 100% 100%; height: 460px; background-size: 100%; position: relative; }
	#sub .cont-05 .text-box-07 h3 { font-size: 18px; }
	#sub .cont-05 .text-box-07 p { font-size: 13px; }
	#sub .cont-05 .text-box-07 { width: 100%; margin-left: 0; transform: none; padding: 0; top: 0; left: 0; }
	#sub .cont-05 .inner-box-08 h3 { margin-bottom: 20px; }
	#sub .cont-05 .inner-box-08 .mov-box { height: 210px; }
	#sub .cont-05 .text-box-08 ul li { width: 50%; padding-right: 10px; margin-bottom: 20px; }
	#sub .cont-05 .text-box-08 ul li span { font-size: 13px; }
	#sub .cont-05 .inner-box-09 { height: auto; }
	
	#sub .cont-05 .inner-box-09 { background-position: 100% 0; background-size: 100%; height: 610px; background-color: #e1e1e1; }
	#sub .cont-05 .text-box-09 { width: 100%; left: 0; padding: 50px 20px; }
	#sub .cont-05 .text-box-09 strong { padding-left: 135px; }
	#sub .cont-05 .text-box-09 .sub-tit { padding-left: 135px; padding-top: 0; font-size: 16px!important; }
	#sub .cont-05 .text-box-09 p { padding-top: 61px; }
	#sub .cont-05 .text-box-09 ul li { padding: 5px; }
	#sub .cont-05 .text-box-09 ul li div span { font-size: 11px; }
	#sub .cont-05 .text-box-09 ul li div strong { padding-left: 0; }
	
	#sub .cont-05 .inner-box-10 { height: auto; background-size: 100%; background-color: #333; background-position: 100% 100%; }
	#sub .cont-05 .text-box-10 { width: 100%; margin-left: 0; padding: 50px 20px;  }
	#sub .cont-05 .text-box-10 ul li span:nth-child(2) { margin-top: -30px; font-size: 11px; }
	
	#sub .cont-05 .inner-box-11 p { font-size: 16px;}
	#sub .cont-05 .inner-box-11 span { font-size: 13px; }
	#sub .cont-05 .inner-box-12 { background-position: 31%; background-size: 260%; height: 600px; }
	#sub .cont-05 .text-box-12 { width: 100%; padding: 50px 20px; }
	#sub .cont-05 .text-box-12 p { font-size: 16px; }
	#sub .cont-05 .text-box-12 span { font-size: 13px; }
	#sub .cont-05 .inner-box-13 { height: 460px; }
	#sub .cont-05 .inner-box-13 { background-position: 40% 100%; }
	#sub .cont-05 .text-box-13 { width: 100%; left: 0; padding: 50px 20px; }
	#sub .cont-05 .inner-box-14 { height: auto; }
	#sub .cont-05 .inner-box-14 { background-position: 100%; }
	#sub .cont-05 .text-box-14 { width: 100%; left: 0; padding: 50px 20px; }
}


