@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&display=swap');

body{

}
/*-----------------------
 wrap
-------------------------*/
.wrap{
width:1000px;
margin: 0 auto;
}

/*-----------------------
 header
-------------------------*/
header{
width: 100%;
height:60px;
position: fixed;
left: 0;
top: 0;
background-color: transparent;
z-index: 999;
}
header.active{
background-color: #fff;
}

header .wrap{
height: 60px;
	display:flex;
	justify-content: center;
	align-items: center;
    justify-content: space-between;
}
header .wrap .logo{
max-height: 50px;
width: auto;
	display:flex;
	justify-content:flex-start;
	align-items: center;
}
header .wrap .logo h1{
font-size: 1.4rem;
color: #222222;
margin-left: 1em;
}

.logoname{
font-weight: bold;
font-family:"Noto Sans JP", sans-serif;
font-size: 3.6rem;
letter-spacing: 1px;
color: #666666!important;
}
.logoname strong{
color: #ba1c21;
}


header .wrap .head_contact{
	display:flex;
	justify-content:flex-end;
	align-items: center;
}
header .wrap .head_contact a.head_btn{
display: flex;
  justify-content: center;
  align-items: center;
  font-size:1.8rem;
  color: #fff;
  font-weight: bold;
  background-color:#ba1c21;
  width: 180px;
  height:40px;
  margin-left: 1.5em;
}
header .wrap .head_contact a.head_btn:after{
content: "»";
margin:-0.125em 0 0 0.5em;
}


header .wrap .head_contact a.head_btn:hover{
opacity: 0.7;
}
header .wrap .head_contact .head_tels p:nth-of-type(1){
font-size: 2.6rem;
line-height:2.8rem;
letter-spacing:0px;
font-weight:bold;
color: #ba1c21;
}
header .wrap .head_contact .head_tels p:nth-of-type(2){
font-size:1.45rem;
letter-spacing:0px;
}

/*-----------------------
 section
-------------------------*/
section{
padding: 0;
margin: 0;
clear: both;
width: 100%;
min-height: 100px;
}
section:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}


/*-----------------------
 mv
-------------------------*/
section.mv{
min-height: 640px;
width: 100%;
background-image:url("../images/mv_bg.png");
background-size:auto 26vw;
background-position:left 79% center;
background-repeat: no-repeat;
position: relative;
overflow: hidden;
}
section.mv:before {
  content: '';
  position: absolute;
  bottom: 0;
  left:-10%;
  width:60%;
  height:150%;
  margin:0;
  background: #f5f5f5;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: rotate(15deg);
  -ms-transform: rotate(15deg);
  transform: rotate(15deg);
  z-index: -1;
}

section.mv>.wrap{
display: block;
position: relative;
z-index: 1;
background:none;
color: #fff;
padding:80px 0 4em 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
line-height: 1.5;
font-weight: bold;
}
section.mv>.wrap:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
section.mv>.wrap h2{
font-size:2.6rem;
margin-bottom:0.5em;
text-align: left;
  color: #ba1c21;
  font-weight: bold;
}
section.mv>.wrap h2 span.logoname{
font-size:3rem;
}

section.mv>.wrap p.big{
text-align:left;
font-size:3.5rem;
font-weight: bold;
letter-spacing: 0;
line-height:1.5;
margin-bottom: 0.25em;
color: #000000;
}

section.mv > .wrap p.big br{
display:block;
}
section.mv>.wrap p.info{
text-align: center;
}
section.mv>.wrap p.info span{
font-size:3rem;
letter-spacing:3px;
display: inline-block;
position: relative;
margin: 0 auto;
}
section.mv>.wrap p.info span:after{
content: "";
width: 100%;
height: 2px;
display: block;
background-color: #ba1c21;
bottom: 5px;
left: 0;
}

section.mv>.wrap p.info strong{
font-size: 2.8rem;
}
section.mv>.wrap ul{
margin:3em 0 0 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
max-width: 100%;
}
section.mv>.wrap ul li{
margin-bottom:2em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
line-height: 1.5;
border-left:5px solid #dfdfdf;
padding-left: 1em;
}
section.mv>.wrap ul li h3{
font-size:2rem;
color:#ba1c21;
	display:flex;
	justify-content:flex-start;
	align-items: center;
    margin-bottom: 0.5em;
}
section.mv>.wrap ul li h3 img{
margin-right: 0.5em;
width: auto;
height: auto;
max-width: 24px;
}
section.mv>.wrap ul li p{
color:#212121;
font-size:1.8rem;
}
section.mv>.wrap ul li p.indm{
font-size: 1.6rem;
text-indent: -1em;
margin: 0 0 0 1em;
}




section.mv .bluebar{
background-color: #333333;
width: 100%;
line-height:2;
color: #FFF;
font-size: 2rem;
padding:1em 0;
font-weight: bold;
text-align: center;
}
section.mv .bluebar p span{
display: flex;
  justify-content: center;
  align-items: center;
}
section.mv .bluebar p span strong{
color:#fff;
font-size: 2.2rem;
margin-right: 0.5em;
padding: 0 1em;
background-image: url("../images/mv_obi.svg");
background-size:100% 100%;
}


/*-----------------------
 common
-------------------------*/
h2.subtitle{
text-align: center;
font-size: 3rem;
font-weight: bold;
position: relative;
}
h2.subtitle > span{
background-color: #fff;
padding: 0 1em;
z-index: 2;
position: relative;
}
h2.subtitle > span span.logoname{
font-size: 3.2rem;
}
h2.subtitle:after,
h2.subtitle:before{
content: "";
width:50%;
height: 3px;
display: block;
background-color:#ba1c21;
margin: 0;
left: 0;
position: absolute;
top: 1.6rem;
z-index: 1;
}
h2.subtitle:after{
left: inherit;
right: 0;
}
h2.subtitle + p.txtC{
color: #22222;
font-size: 2.3rem;
font-weight: bold;
margin:1.5em 0;
}


section > .wrap{
padding:3vw 0 0 0;
}
section .wrap:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

aside.estimate{
padding: 3vw 0;
background-color: #333333;
}
aside.estimate h2{
text-align: center;
font-weight: bold;
color: #fff;
font-size:3.2rem;
margin-bottom:1.5em;
position: relative;
}
aside.estimate h2:after,
aside.estimate h2:before{
content: "";
width: 25%;
height: 2px;
display: block;
background-color: #fff;
position: absolute;
left: 0;
top: 1.5rem;
}
aside.estimate h2:after{
left: inherit;
right: 0;
}

aside.estimate .convert_btn_list{
display: flex;
  justify-content: center;
  align-items: center;
justify-content:space-around;
}
aside.estimate .convert_btn_list .leftbox{
color: #fff;
font-size:2rem;
line-height:1.5;
letter-spacing:3px;
}
aside.estimate .convert_btn_list .leftbox p.bold{
letter-spacing: 0;
margin-bottom: 1em;
}
aside.estimate .convert_btn_list .leftbox img{
float: left;
margin-right: 1em;
}
aside.estimate .convert_btn_list .leftbox a{
font-weight: bold;
font-size:5rem;
line-height: 1;
letter-spacing:1px;
}
aside.estimate .convert_btn_list a.head_btn{
width: 287px;
height: 62px;
display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ba1c21;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  position: relative;
}
aside.estimate .convert_btn_list a.head_btn:hover{
opacity: 0.8;
}
aside.estimate .convert_btn_list a.head_btn:after{
content: "▶";
position: absolute;
top:50%;
transform: translateY(-50%);
right: 1em;
}
aside.estimate .convert_btn_list a.head_btn.line{
background-color: #00b900;
margin-top:0.5em;
}
aside.estimate .convert_btn_list a.head_btn.line img{
margin-right: 0.25em;
}

/*-----------------------
 result
-------------------------*/



/*-----------------------
 hikaku
-------------------------*/
section.hikaku .table_box{
width: 100%;
margin: 4em auto;
padding:2em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border: 2px solid #000066;
}
section.hikaku table{
width:100%;
display:table;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
margin-bottom: 5vw;
}
section.hikaku table tr{
	display:table-row;
}
section.hikaku table tr td{
display: table-cell;
background-color: #fff;
text-align: center;
font-size: 1.4rem;
font-weight: bold;
line-height: 2;
padding: 1em 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-bottom: 1px solid #dfdfdf;
border-right: 1px solid #dfdfdf;
}
section.hikaku table tr td:nth-last-of-type(1){
border-right: none;
}
section.hikaku table tr:nth-child(n+2) td:nth-of-type(2){
background-color: #fbf3f4;
color: #ba1c21;
font-size: 1.6rem;
}
section.hikaku table tr td:nth-of-type(1){
background-color: #f5f5f5;
}
section.hikaku table tr:nth-of-type(1) td{
background-color: #e0e0e0;
}
section.hikaku table tr td .logoname{
font-size:2.2rem;
}
section.hikaku table tr td:nth-of-type(2){
border-left: 5px solid #ba1c21;
border-right: 5px solid #ba1c21;
}
section.hikaku table tr:nth-of-type(1) td:nth-of-type(2){
border-top: 5px solid #ba1c21;
}
section.hikaku table tr:nth-last-of-type(1) td:nth-of-type(2){
border-bottom:5px solid #ba1c21;
}


section.hikaku p.come{
font-size:2.2rem;
text-align: center;
color: #fff;
font-weight: bold;
margin-bottom: 5vw;
background-image: url("../images/mv_obi.svg");
background-repeat: no-repeat;
background-size:100% 100%;
line-height:1.5;
padding: 1em 0;
}


p.linesns{
padding-left:26px;
position: relative;
}
p.linesns a{
padding: 0 0.5em;
color:#00B900;
font-weight: bold;
text-decoration: underline;
}
p.linesns:before{
content: "";
position: absolute;
width:24px;
height:24px;
display: block;
background-image: url("../images/icon_linebt.png");
background-size: cover;
top: 0;
left: 0;
}



/*-----------------------
 whats syurui
-------------------------*/
section.syurui{
padding:0 0 5vw 0;
}
section.whats{
padding:3vw 0;
}

section.syurui ul,
section.whats ul{
display: flex;
  justify-content: center;
  align-items:stretch;
  justify-content: space-between;
  margin-top:4em;
}

section.syurui ul li,
section.whats ul li{
width: 48%;
}
section.syurui ul li h3,
section.whats ul li h3{
font-size: 2.2rem;
color: #fff;
font-weight: bold;
background-color:#ba1c21;
text-align: center;
padding:0.5em 0;
border-radius:2.2rem;
margin-bottom: 1em;
}

section.whats ul li p{
font-size:1.6rem;
line-height: 2;
}
section.whats ul li p.chk{
font-size: 1.8rem;
font-weight: bold;
padding-left: 1.5em;
background-image: url("../images/icon_chkmark.svg");
background-repeat: no-repeat;
background-position: left 0 top 0.6em;
background-size: auto 2rem;
line-height:2.5;
}

section.syurui ul li img{
width: auto;
height: auto;
max-width: 100%;
}




/*---------------------------------------------*
* nagare 
*----------------------------------------------*/
section.nagare .wrap{
padding: 6vw 0 0 0;
}
p.nagare_read{
font-weight: bold;
text-align: center;
font-size:2.8rem;
line-height: 3rem;
clear: both;
margin:5vw 0 1.5em 0;
color:#222222;
}


ul.nagare_list{
width:100%;
margin: 0 auto 3em auto;
display: flex;
  justify-content: center;
  align-items:stretch;
justify-content: space-between;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
ul.nagare_list li{
width:28%;
padding: 3em 0;
position:relative;
}
ul.nagare_list li  h3{
font-size: 2.2rem;
color: #fff;
font-weight: bold;
background-color:#ba1c21;
text-align: center;
padding:0.5em 0;
border-radius:2.2rem;
margin-bottom: 1em;
}

ul.nagare_list li img{
display: block;
margin: 2em auto;
width: auto;
height: auto;
max-height: 60px;
}
ul.nagare_list li p{
font-size: 1.6rem;
line-height: 1.5;
}
ul.nagare_list li p.indmh{
text-indent: -4em;
}
ul.nagare_list li:after{
content: "";
display: block;
position: absolute;
top:50%;
transform: translateY(-50%); 
right:-60px;
  width: 0;
  height: 0;
  border-left:30px solid #dfdfdf;
  border-top:60px solid transparent;
  border-bottom:60px solid transparent;

}
ul.nagare_list li:nth-last-of-type(1):before,
ul.nagare_list li:nth-last-of-type(1):after{
display: none;
}


/*---------------------------------------------*
* qanda 
*----------------------------------------------*/
section.qanda{
background-color: #f5f5f5;
}
section.qanda h2.subtitle > span {
    background-color: #f5f5f5;
    padding: 0 1em;
    z-index: 2;
    position: relative;
}

.qanda .wrap{
padding:6vw 0;
}
.qanda .wrap p.txtC{
font-size:2.2rem;
line-height: 3rem;
font-weight: bold;
text-decoration: underline;
}
.qanda .wrap dl{
text-align: left;
line-height: 2.5;
width:100%;
margin: 0 auto;
padding:5vw 0 2.5vw 0;
font-weight: bold;
letter-spacing:1px;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.qanda .wrap dl dt{
line-height:2.5;
font-size:2.2rem;
color:#ba1c21;
margin-bottom: 1em;
padding-left:2.5em;
position: relative;
}
.qanda .wrap dl dt span{
font-family: Verdana, Geneva, "sans-serif";
font-weight:normal;
font-size: 3.6rem;
position:absolute;
top:0.25em;
left: 0;
line-height: 1;
}

.qanda .wrap dl dd{
line-height: 1.5;
font-size:2.2rem;
color: #222;
padding:0 0 2em 2.5em;
margin-bottom:1.5em;
border-bottom: 1px solid #dfdfdf;
position: relative;

}
.qanda .wrap dl dd span{
font-family: Verdana, Geneva, "sans-serif";
font-weight:normal;
font-size: 3.6rem;
position:absolute;
top:0;
left: 0;
line-height: 1;
}


/*---------------------------------------------*
* contact 
*----------------------------------------------*/
section.contact{
background-color: #333333;
}
section.contact .wrap{
padding: 5vw 0 2vw 0;
}
section.contact h2.subtitle{
color: #fff;
padding-bottom:1em;
position: relative;
margin-bottom: 1em;
}
section.contact h2.subtitle:before{
display: none;
}
section.contact h2.subtitle:after{
content: "";
width: 60px;
height: 3px;
background-color: #ba1c21;
display: block;
position: absolute;
left: 50%;
margin-left: -30px;
top: inherit;
bottom:0.25em;
}
section.contact p.contact_read{
font-size: 2.2rem;
line-height: 3rem;
text-align: center;
color: #FFF;
font-weight: bold;
margin-bottom:1.5em;
}
section.contact p.sixtymin{
font-size: 2.8rem;
line-height: 1.5;
text-align: center;
font-weight: bold;
color: #fff;
padding-bottom: 2em;
}
section.contact p.sixtymin span{
padding: 0 1.5em 1.5em 1.5em;
background-image: url("../images/form_kako.png");
background-position: bottom center;
background-repeat: no-repeat;
background-size: 100% auto;
}


.contact form dl{
width:60%;
display: block;
margin:0 auto 3em auto;
padding:2em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.contact form dl dt,
.contact form dl dd{
clear: both;
padding:0 0 0.25em 0;
width: 100%;
font-weight: bold;
color: #fff;
}
.contact form dl dt{
font-size:2.2rem;
line-height:2;
	display:flex;
	justify-content:flex-start;
	align-items: center;
}
.contact form dl dt i{
font-size: 1.6rem;
margin-right:0.5em;
font-weight:bold;
color: #fff;
background-color:#ba1c21;
padding:0.1em 0.25em;
min-width: 2.25em;
}
.contact form dl dt i.gray{
background-color: #d8e6e9;
color:#222;
}
.contact form dl dd{
font-size:2.2rem;
margin-bottom:1em;
}
.contact form dl dt span{
font-weight: normal;
margin-left: 1em;
}
.contact form dl dd input{
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
padding:1em;
border: none;
}
.contact form dl dd input.short{
width: 40%;
margin-right: 0.5em;
}
.contact form dl dd textarea{
width: 100%;
max-width: 100%;
min-width: 100%;
height: auto;
min-height:7em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border: none;
}
.contact form dl dd:nth-last-of-type(1){
padding-top:1em;
text-align: center;
}
.contact form dl dd:nth-last-of-type(1) p{
margin:1em 0 0 0;
}
.contact form dl dd:nth-last-of-type(1) p a{
color: #fff;
}
.contact form dl dd:nth-last-of-type(1) p a:hover{
text-decoration: underline;
}
.contact form dl dd div.policy{
color: #222;
background-color: #fff;
padding: 2em 1em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
width: 100%;
max-height:360px;
font-weight: normal;
font-size: 1.6rem;
line-height: 1.5;
overflow-y: auto;
}
.contact form dl dd div.policy p.indb{
margin: 0;
}
.contact form dl dd div.policy p.indb:nth-child(n+2){
margin:2em 0 0 0;
}
.contact form dl dd p.policychk{
font-weight: normal;
line-height: 1.5;
margin-bottom: 2em;
}
.contact form dl dd button[type=submit]{
background-color: #c60001;
color: #fff;
font-weight: bold;
font-size: 2.7rem;
border: none;
width:350px;
padding:0.5em 0;
display: block;
margin: 0 auto;
font-weight: bold;
position: relative;
cursor: pointer;
}
.contact form dl dd button[type=submit]:after{
content: "▶";
position: absolute;
right: 1em;
}
.contact form dl dd button[type=submit]:hover{
opacity: 0.8;
}

/*----------------------
 page-top
-------------------------*/
#page-top{
	width:40px;
	height:40px;
	display:block;
	position:fixed;
    right:5%;
	bottom:5%;
	cursor:pointer;
	  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
  z-index:998;
}
#page-top img{
	width:40px;
	height:40px;
}
#page-top:hover{
	opacity:0.8;
}

.sp{
display: none!important;
}
.pc{
display:inherit;
}


/*----------------------
 footer
-------------------------*/
footer.l-footer {
padding-top: 5vw;
background-color: #f5f5f5;
}
footer.l-footer h2{
font-size: 3rem;
font-weight: bold;
color: #212121;
text-align: center;
margin-bottom: 1em;
}
footer.l-footer .wrap .inner{
display: flex;
  justify-content: center;
  align-items:flex-start;
  justify-content: space-between;
  margin-top: 3vw;
}
footer.l-footer .wrap .inner > div{
width: 48%;
}
footer.l-footer .wrap .inner > div h3{
background-color: #ba1c21;
font-weight: bold;
text-align: center;
padding: 0.5em 0;
color: #fff;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
font-size: 1.8rem;
}
footer.l-footer .wrap .inner > div table{
line-height: 2;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
font-size: 1.8rem;
margin: 1em 0;
}
footer.l-footer .wrap .inner > div table td{
padding: 0 1em;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
vertical-align: top;
}



.l-copyright.wrap {
width: 100%;
    text-align: center;
    background-color:#333;
    padding:1em 0;
    margin-top: 3vw;
}
.l-copyright.wrap p{
color: #fff;
font-size: 1rem;
}

section.thanks{
padding:5vw 0;
}

@media screen and (max-width:1000px) {
body {
    padding-top:50px;
}
.pc{
display: none!important;
}
.sp{
display: block!important;
}


/*-----------------------
 header
-------------------------*/

header .wrap{
width:95%;
margin: 0 auto;
}
header .wrap .logo h1 {
    font-size: 1rem;
    margin-left: 0.5em;
}

header .wrap,
header{
height:50px;
}

header .wrap .sp img{
max-height: 40px;
width: auto;
}
header .wrap .logo h1 {
    margin-left:1em;
}
header .wrap .head_contact.sp a{
margin-left:0.5em;
}

.wrap,
section .wrap{
width:96%;
margin: 0 auto;
}


section.mv > .wrap p.big {
    text-align: left;
    font-size: 3.5vw;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1.5;
    margin-bottom: 0.25em;
    color: #000000;
}
section.mv .bluebar p span strong,
section.mv .bluebar {
    font-size: 2vw;
}

h2.subtitle {
    font-size: 3vw;
}
h2.subtitle + p.txtC {
    font-size: 2.3vw;
}

section img{
max-width: 100%;
}

section.hikaku a.sp{
margin-bottom: 3em;
}
section.hikaku p.come {
    font-size: 2.2vw;
}

aside.estimate h2 {
    font-size: 3.2vw;
}
aside.estimate .convert_btn_list .leftbox a {
    font-size: 5vw;
}
aside.estimate .convert_btn_list .leftbox {
    font-size: 2vw;
}

ul.convert_btn_list{
display: block;
}
ul.convert_btn_list li {
    width:100%;
    margin-bottom: 1em;
}
section.whats ul li p {
    font-size: 1.6rem;
    line-height:1.5;
    margin-bottom: 1em;
}
section.whats ul li p.chk {
    font-size: 1.6rem;
    line-height:1.5;
    margin-bottom: 1em;
background-position: left 0 top 0;    
}

.l-footer{
min-width: inherit;
}
.contact form dl {
    width:90%;
    min-width:inherit;
    max-width:inherit;

}
.l-footer ul.footer-navi-list.float-list{
border-collapse:collapse;
border-spacing:0;
empty-cells:show;
width: 96%;
margin: 0 auto;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.l-footer ul.footer-navi-list.float-list li{
padding: 0;
min-width:50%;
width: 50%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
border-right: none;
border-top:1px solid #A9A9A9;
border-left:1px solid #A9A9A9;
}
.l-footer ul.footer-navi-list.float-list li:nth-child(even){
border-right:1px solid #A9A9A9;
}
.l-footer ul.footer-navi-list.float-list li a{
padding: 1em 0;
display: block;
text-align: center;
min-width:100%;
}
.l-footer ul.footer-navi-list.float-list li:nth-last-of-type(1){
border-right:1px solid #A9A9A9;
border-bottom:1px solid #A9A9A9;
width: 100%;
}




}
@media screen and (max-width:768px) {



header .wrap {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
max-width:100%;
margin: 0 auto;
width: 100%;
padding: 0 5%;
}
header .wrap .logo {
max-width:75%;
}
header .wrap .logo h1 {
    margin-left:0;
    display: block;
    font-size:0.9rem;
    font-weight:normal;
    line-height: 1.5;
}
header .wrap .sp img {
    max-height:30px;
    width: auto;
}


.logoname {
    font-size:5vw;
}
header .wrap .logo {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}


section > .wrap {
    padding:6vw 0 0 0;
}

section.mv {
background-image: none;
}
section.mv::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: -20%;
    width: 70%;
}
section.mv > .wrap {
    padding: 8vw 0;
}
section.mv > .wrap h2 {
    font-size:1.8rem;
    margin-bottom: 0.5em;
    text-align:center;
    color: #ba1c21;
    font-weight: bold;
}
section.mv > .wrap p.big {
    text-align:center;
    font-size: 1.6rem;
}
section.mv .bluebar {
    font-size:1.8rem;
    display: block;
    text-align: center;
}
section.mv .bluebar p span {
    display: flex;
    justify-content: center;
    align-items: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      font-size: 1.8rem;
      line-height: 1.5;
}
section.mv .bluebar p span strong {
    font-size:1.8rem;
    margin-bottom: 0.5em;
}

section.hikaku p.come {
    font-size:1.6rem;
    padding: 0.25em 1em;
}

aside.estimate {
    padding:6vw 0;
}
aside.estimate h2 {
    font-size:1.8rem;
}
aside.estimate h2::after, aside.estimate h2::before {
    width:10%;
    top:0.5em;
}
aside.estimate .convert_btn_list {
    display: flex;
    justify-content: center;
    align-items: center;
    justify-content: space-around;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
aside.estimate .convert_btn_list .rightbox,
aside.estimate .convert_btn_list .leftbox {
    font-size:1.6rem;
    width: 100%;
}
aside.estimate .convert_btn_list .leftbox img {
    margin-right: 1em;
    max-width: 50px;
    width: auto;
    height: auto;
}

aside.estimate .convert_btn_list .leftbox a {
    font-size:3rem;
}
aside.estimate .convert_btn_list .leftbox p.bold,
aside.estimate .convert_btn_list .leftbox p.phone + p{
font-size: 1.4rem;
}

aside.estimate .convert_btn_list .rightbox{
    font-size: 1.6rem;
    width: 100%;
    text-align: center;
}
aside.estimate .convert_btn_list a.head_btn {
margin:0.5em auto;
}

section.syurui ul, section.whats ul {
    display: flex;
    justify-content: center;
    align-items: stretch;
    justify-content: space-between;
    margin-top: 4em;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
section.syurui ul, section.whats ul li{
width: 100%;
margin-bottom: 1em;
}

section.hajimete .inner {
    width:90%;
    margin: 0 auto;
    padding-bottom: 2em;
}
section.hajimete .inner p {
    font-size: 1.6rem;
    line-height: 1.5;
}
ul.merit_list li {
width: 49%;
font-size: 1.4rem;
}

h2.subtitle {
    text-align: center;
    font-size:2rem;
    font-weight: bold;
}
h2.subtitle > span span.logoname {
    font-size:2.2rem;
}
h2.subtitle span {
    padding: 0 0.25em;
}
h2.subtitle:after, h2.subtitle:before {
    top: 1rem;
}
h2.subtitle + p.txtC {
    font-size:3.5vw;
    line-height: 1.5;
}


h2.sc_title {
    font-size: 1.6rem;
    line-height: 1.2;
    padding:0.25em 1em;
}

section.syurui ul{
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
section.syurui ul li, section.whats ul li {
    width:100%;
    margin-bottom: 1em;
}



ul.nagare_list {
    width:100%;
    margin: 0 auto 3em auto;
    display: block;
}
ul.nagare_list li {
width:100%;
margin: 0 auto 1em auto;
    min-height:inherit;
}
ul.nagare_list li:after {
    content: "";
    display: block;
    position: absolute;
    top:inherit;
    transform:none;
    right:inherit;
left:50%;
transform: translateX(-50%); 
bottom: -1.5em;
    width: 0;
    height: 0;
    border-right:100px solid transparent;    
    border-left:100px solid transparent;
    border-top:30px  solid #dfdfdf;
    border-bottom:0px solid transparent;
}

.qanda .wrap {
    padding:10vw 0;
}

.qanda dl {
    line-height:1.5;
    width:100%;
}

.qanda .wrap dl dt {
    line-height: 1.5;
    font-size:1.8rem;
    color: #000066;
    padding-left: 2.25em;
     margin-bottom: 1em;
}
.qanda .wrap dl dd span,
.qanda .wrap dl dt span {
    font-family: Verdana, Geneva, "sans-serif";
    font-weight: normal;
    font-size:2.4rem;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 1;
}

.qanda .wrap dl dd {
    line-height: 1.5;
    font-size:1.6rem;
    color: #222;
    margin-bottom:2em;
    padding-left: 2.25em;
    background-position: top 0.25em left 0;
}

.qanda p {
    font-size: 1.6rem;
    font-weight: bold;line-height: 1.5;
}
.qanda .wrap p.txtC {
    font-size: 1.6rem;
    line-height: 3rem;
}

section.contact .wrap {
    padding:10vw 0 4vw 0;
}
section.contact p.contact_read {
    font-size:1.8rem;
}
section.contact p.sixtymin {
    font-size: 2rem;
}
.contact form dl {
    width:100%;
    margin: 0 auto 3em auto;
    min-width:inherit;
    max-width:inherit;
    padding:1em 0;
}
.contact form dl dt {
    font-size:1.8rem;
}
.contact form dl dt i {
    font-size: 1.2rem;
}
.contact form dl dt span {
    font-weight: normal;
    margin-left: 1em;
    font-size: 1.2rem;
}
.contact form dl dd {
    font-size:1.6rem;
    margin-bottom: 1em;
}
.contact form dl dd button[type="submit"] {
    font-size: 2rem;
}
.contact form dl dd button[type=submit]:after{
content: "▸";
}

footer.l-footer {
    padding-top:10vw;
}
footer.l-footer h2 {
    font-size:1.8rem;
}
footer.l-footer .wrap .inner {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    justify-content: space-between;
    margin-top:6vw;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
footer.l-footer .wrap .inner div{
width: 100%;
}
footer.l-footer .wrap .inner > div table {
    line-height: 2;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.4rem;
    margin: 1em 0;
}

}
@media screen and (max-width:320px) {
header .wrap .logo img {
    max-width: 100px;
}
header .wrap .sp img {
    max-height:20px;
    width: auto;
}
section.mv .header .mv_list ul li {
    font-size: 1.2rem;
}

section.mv > .wrap h2 {
    font-size:1.6rem;
    text-align: center;
}
section.mv .header h2 span {
    font-size:1.8rem;
margin: 0 0 1em 0;
padding: 0;
display: block;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
text-align: center;
}

section.mv > .wrap p.big {
    font-size:2.4rem;
    margin-bottom: 0.25em;
}
section.mv > .wrap p.big small {
    font-size:1.6rem;
}
section.mv > .wrap p.info {
    font-size: 1.4rem;
    letter-spacing:0;
    display: inline-block;
    position: relative;
}
section.mv > .wrap p.info strong {
    font-size:1.6rem;
}


section.mv .under h2 {
    font-size: 1.3rem;
    line-height: 1.5;
}
section.mv .under ul li {
    width:100%;
    margin: 0 auto 1em auto;
}
ul.convert_btn_list li {
    width:100%;
    margin: 0 auto 1em auto;
}
p.norikae_read {
    font-size: 1.2rem;
}
.wbox-w h4 {
    font-size: 1.4rem;
    line-height: 1.5;
}
ul.nagare_list li div.child h3 {
    font-size: 1.4rem;
    line-height: 1.5;
    height: auto;
}
.l-footer ul.footer-navi-list.float-list li a{
font-size: 1.2rem;
}
}
