﻿.maindesign .breadcrumb {
    box-sizing: border-box;
    color: #83838f;
    display: flex;
    flex-wrap: wrap;
    font-size: 0.875em;
    line-height: 1.5;
}
	  
.maindesign .breadcrumb p{
	margin-bottom: 0;
}

.maindesign .breadcrumb a{
	color: #83838f !important;
}
.maindesign {
	font-family: "Noto Sans JP","ＭＳ Ｐゴシック","MS PGothic",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,Sans-Serif;
}
.maindesign h2{
	margin: 40px 0 !important
}
.maindesign .bnrList{
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
  -webkit-justify-content: space-between;
-ms-justify-content: space-between;
justify-content: space-between;
}
.maindesign #inc_main .bnrList li{
	width: 31%;
	margin-bottom: 20px
}
	.maindesign .bnrList li a img{
		width: 100%
	}

#inc_main ul{
	margin-top: 30px;
		display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
  -webkit-justify-content: space-between;
-ms-justify-content: space-between;
justify-content: space-between;
}
#inc_main li{

	margin-bottom:20px;

	width:31%;
	position:relative;
	}
.mask01{
	opacity:0.4;
	filter: alpha(opacity=40);
	-ms-filter: "alpha( opacity=40 )";
	background: #f00;
	}
.mask02{
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	/*background: #FFF;*/
	}
#howto {
  text-aline:center;
  }
#howto li{
	display:inline-block;
	margin-bottom:6px;

	width:420px;
	/* For IE 6/7 */
    *display: inline;
    *zoom: 1;  
}  

.webfont{ font-family: 'Noto Sans JP', sans-serif;}
.maindesign h1 img {
	width:100%;
	/*display:block;*/
}
.maindesign .links li img {
	display:block;
}
.maindesign h1 span{
    color: #fff;
    text-shadow: 4px 4px 5px rgba(10,10,10,0.7);
    text-align: left;
    font-weight: bold;
    font-size: 70px;
    margin-left: 20px;
    padding-top: 20px;
    line-height: 1;
    position: absolute;
    top: 0px;
    left: 0px;
}	
.maindesign .cols3-2 li {
    width: calc(33.33% - 7px);
    margin-right: calc(21px / 2);
    margin-bottom: 20px;
    position: relative;
}
.maindesign .cols3-2 .text-box {
    padding: 0.5em;
    line-height: 1.6em;
}
.maindesign .cols3-2 li:nth-child(3n) {
    margin-right: 0px;
}
.maindesign .font{
font-size: 17px;
font-weight: 700;
}
@media screen and (max-width:767px){
.maindesign h1 span{
	font-size: 2.5em;
}
.maindesign .links.cols3-2 li {
    width: calc(50% - 5px);
    margin-right: calc(10px / 1);
    margin-bottom: 20px;
}
.maindesign .cols3-2 li:nth-child(3n) {
    margin-right: calc(10px / 1);
}
.maindesign .links.cols3-2 li:nth-child(2n) {
    margin-right: 0px;
}
}
.maindesign .navigate {
padding: 0 0px;
}
.maindesign .btnstyle {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.maindesign .btnstyle li {
width: calc(50% - 5px);
margin-bottom: 10px;
border-radius: 5px;
border: 1px solid #ababab;
background: #f1f1f1;
display: flex;
overflow: hidden;
}	
.maindesign .btnstyle a {
display: flex !important;
align-items: center;
width: 100%;
}
.maindesign .btnstyle .images {
height: 6em;
background: #fff;
border-right: 1px solid #ababab;
display: inline-block;
padding: 5px;
box-sizing: border-box;
}
.maindesign .btnstyle .images img {
height: 100%;
}
.maindesign .btnstyle .textBox {
padding: 0.5em;
font-weight: 700;
line-height: 1.3em;
text-align: left;
}
.maindesign .btnstyle .arrow {
background: #aaa;
height: 100%;
width: 2em;
display: flex;
color: #fff;
align-items: center;
justify-content: center;
}
@media screen and (max-width: 767px){
.maindesign .navigate {
padding: 0 10px;
}
.maindesign .btnstyle li {
width: 100%;
}
}

.maindesign .textbox span{
text-align: left;
}
.maindesign p.setumei{
line-height: 1.5;
margin-bottom: 20px;
text-align: left;
}
.maindesign p.setumei.lastT{
margin-bottom: 30px;
}
.maindesign .goTop {
    clear: both;
    font-size: 14px;
    margin: 8px 0;
    text-align: right;
}
.maindesign .fuyukakoihowto{
	margin: 20px 0;
}
.maindesign .fuyukakoihowto img{
	width: 100%;
}
.maindesign .eventbnr.singleW li{
width: 100%;
margin: 0 0 20px 0;
}

.maindesign .eventbnr.singleW li a{
display: flex;
flex-direction: row-reverse;
}

.maindesign .eventbnr.singleW li .linksTxt p {
margin-top: 0;
margin-bottom: 0;
margin-left: 10px;
padding: 0.5em 0;
font-weight: 700;
display: flex;
flex-wrap: wrap;
align-items: center;
}
.maindesign .eventbnr.singleW li .linksTxt p img{
width: 30%;
margin: auto 10px auto 0;
}

.maindesign .eventbnr.singleW li .linksImg{
margin: auto 15px auto 15px;
width: calc(20% - 20px);
}                      
@media only screen and (max-width: 767px) {

.maindesign .eventbnr.singleW li .linksImg{
margin: auto 2vw auto 2vw;
width: 38%;
}  
    
.maindesign .eventbnr.singleW li .linksTxt p img{
width: 60%;
max-width: 200px;
}

}
.maindesign .eventbnr{
	display: flex;
	flex-wrap: wrap;
}
.maindesign .eventbnr li{
    width: calc(50% - 5px);
    margin: 0 10px 20px 0;
    position: relative;
    box-sizing: border-box;
    border: 1px solid #ccc;
    border-radius: 5px;
    overflow: hidden;
}
.maindesign .eventbnr li:nth-child(2n){
    margin: 0 0 20px 0;
}
    .maindesign .eventbnr li a{
    display: flex;
	padding-bottom: 10px;
	padding-top: 10px;
}
.maindesign .eventbnr li .linksTxt{
    font-size: 1.2em;
    margin: auto auto auto 0;
    display: flex;
    flex-wrap: wrap;
    width: calc(80% - 20px);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.maindesign .eventbnr li .linksTxt p{
    text-align: left;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 0;
    margin-left: 10px;
    padding: 0.5em 0;
    font-weight: 700;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.maindesign .eventbnr li .linksTxt p span {
    font-size: 0.75em;
    width: calc(100% - 20px);
    line-height: 1.2;
    font-weight: 400;
    padding-top: 0.5em;
    display: block;
}
.maindesign .eventbnr li .linksImg{
    margin: auto 15px auto auto;
    width: calc(30% - 20px);
    display: flex;
    align-items: center;
}
.maindesign .eventbnr li .linksImg img {
    width: 100%;
}
@media only screen and (max-width: 767px) {
	.maindesign .eventbnr li{
    width: 100%;
    margin: 0 0 20px 0;
    padding: 0.3em;
    }
    .maindesign .eventbnr li .linksImg{
    margin: auto 2vw auto 2vw;
    width: 38%;
    display: flex;
    align-items: center;
    }
    .maindesign .eventbnr li a{
    display: flex;
    flex-direction: row-reverse;
	padding-bottom: 8px;
	padding-top: 8px;
    }
    .maindesign .eventbnr li .linksTxt p span {
    width: calc(100% - 20px);
}
}

.maindesign .eventbnr li .linksTxt p.listHeading img{
margin-bottom: 10px;
}

.maindesign .arrow-r{
	position: relative;
}
.maindesign .arrow-r::after{
	content: "";
    position: absolute;
    right: 18px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    width: 8px;
    height: 8px;
    -webkit-transform: rotate( 45deg);
    transform: rotate( 45deg);
    top: 0;
    bottom: 0;
    margin: auto;
}

.maindesign .links.cols3-2 .estimate {
    width: calc(66.66% - 4px);
    margin-right: 0;
}
.maindesign .links.cols3-2 .estimate a {
    display: flex;
    flex-wrap: wrap;
}
.maindesign .links.cols3-2 .estimate .text-box {
    text-align: left;
    width: calc(100% - 216px);
}
.maindesign .links.cols3-2 .estimate .text-box .font{
    font-size: 1.4em;
    margin-bottom: 10px;
    line-height: 1.3;
}
.maindesign .cover-btn{
	width: 100%;
	max-width: 560px;
	margin: 0 auto 60px;
}

.maindesign .links.cols4-2 li{
	margin-top: 20px;
	margin-bottom: 0;
}
.maindesign .links.cols4-2 li:nth-child(-n + 4) {
    margin-top: 0;
}
@media only screen and (max-width: 767px) {
.maindesign .links.cols3-2 .estimate {
    width: 100%;
    margin-right: 0;
}
.maindesign .links.cols3-2 .estimate .text-box {
    width: calc(100% - 166px);
}
.maindesign .links.cols3-2 .estimate-img {
    width: 150px;
}
.maindesign .links.cols3-2 .estimate {
    width: 100%;
    margin-right: 0;
}
.maindesign .links.cols3-2 .estimate .text-box .font{
    font-size: 1.2em;
}


.maindesign .links.cols4-2 li:nth-child(-n + 4) {
    margin-top: 20px;
}
.maindesign .links.cols4-2 li:nth-child(-n + 2) {
    margin-top: 0;
}
}



/*  ↓↓  チェックポイントh3  ↓↓  */
.maindesign h3.checkPoint {
    position: relative;
    font-size: 1.25em;
    font-weight: bold;
    margin: 40px 0 30px 0;
    padding: 0 0 10px 0;
    text-align: left;
    border-bottom: #aaaaaa 2px solid;
    display: flex;
    align-items: center;
}
.maindesign h3.checkPoint span{
    margin: 0 0 0 20px;
}
.maindesign .st0{
	fill:#aaaaaa;
}
.maindesign .st1{
	fill:none;
	stroke:#ffffff;
	stroke-width:3;
	stroke-miterlimit:10;
}
.maindesign .st2{
	fill:#ffffff;
}

/*  ↑↑  チェックポイントh3  ↑↑  */
  

@media screen and (min-width: 768px){
.maindesign .topBtn ul {
    margin: 0px 0 10px 0;
}
.maindesign .topBtn ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.maindesign .topBtn ul li {
    width: 23%;
    margin-right: calc(8% / 3);
    font-family: 'Noto Sans JP',"ＭＳ Ｐゴシック","MS PGothic",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,Sans-Serif;
    margin-bottom: 15px;
    display: flex;
}
.maindesign .topBtn ul li:nth-child(4n){
    margin-right: 0;
}
.maindesign .topBtn ul li a {
    display: flex;
    align-items: center;
    padding-right: 1.5em;
    height: 60px;
    box-sizing: border-box;
}
.maindesign .topBtn ul li a {
    display: flex;
    flex-wrap: wrap;
    /* line-height: 0.3; */
    align-items: center;
    padding-right: 1.5em;
    height: 60px;
    box-sizing: border-box;
}
.maindesign .topBtn li a {
    color: #333;
    text-decoration: none;
    display: block;
}
.maindesign .topBtn ul li a {
    text-decoration: none;
    color: #000;
    font-weight: bold;
    background-image: url(/include_html/koukoku/21_curvemirror/img/arow_red.png);
    background-repeat: no-repeat;
    background-position: right 0.8em center;
    background-size: 7px;
    padding: 0.9em 0.8em;
    border: 1px solid #ccc;
    border-radius: 6px;
    text-align: left;
    box-sizing: border-box;
    width: 100%;
    font-size: 0.95em;
}
    }
@media screen and (max-width: 767px){
.maindesign .topBtn ul {
    margin: 0px 0 10px 0;
}
.maindesign .topBtn ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.maindesign .topBtn ul li {
    width: 48%;
    margin-right: 0;
    font-family: 'Noto Sans JP',"ＭＳ Ｐゴシック","MS PGothic",verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,Sans-Serif;
    display: flex;
    margin-bottom: 4%;
    line-height: 1.3;
}
.maindesign .topBtn ul li a {
    display: flex;
    align-items: center;
    padding-right: 1.5em;
    height: 60px;
    box-sizing: border-box;
    flex-wrap: wrap;
}
.maindesign .topBtn li a {
    color: #333;
    text-decoration: none;
    display: block;
}
.maindesign .topBtn ul li a {
    text-decoration: none;
    color: #000;
    font-weight: bold;
    background-image: url(/include_html/koukoku/21_curvemirror/img/arow_red.png);
    background-repeat: no-repeat;
    background-position: right 0.5em center;
    background-size: 7px;
     padding: 0.9em 1.2em 0.9em 0.5em;
    border: 1px solid #ccc;
    border-radius: 6px;
    text-align: left;
    box-sizing: border-box;
    width: 100%;
    font-size: 0.85em;
}
    }
.maindesign h2.headingMiddle {
    margin: 60px 0 20px 0;
}

.maindesign .feature-box{
    display: flex;
    flex-wrap: nowrap;
    margin: 0 0 30px;
}
.maindesign .feature-box .feature-img{
    width: 270px; 
}
.maindesign .feature-box .feature-img img{
    width: 100%;
    height: auto;
}
.maindesign .feature-img-solo img{
    width: 100%;
    height: auto;
}
.maindesign .feature-box .feature-txt{
    width: 600px; 
}
.maindesign .feature-txt{
    margin: 0 0 20px;
}
.maindesign .feature-txt p{
    line-height: 1.2;
}
.maindesign .feature-box .feature-txt p{
    padding: 0 0 0 10px;
}
.maindesign .feature-box .feature-txt img{
    margin: 10px 0;
    width: 100%;
    height: auto;
}
.maindesign .fslarge {
    font-size: 1.62em;
    padding: 0.8em 1em;
}