wo@charset 'utf-8';
@import url(//fonts.googleapis.com/css?family=El+Messiri);

/* page-title
--------------------------------------------------*/
.page-title {
  width: 100%;
  margin:2% auto;
  text-align:center;
}

@media screen and (max-width: 810px) {
.page-title {
  width: 100%;
  margin:4% auto 2%;
}
}

@media screen and (max-width: 568px) {
.page-top {
  margin:5% auto 2%;
  padding:0 1%;
  box-sizing: border-box;
}
}

.page-title h2{
  font-family: 'M PLUS Rounded 1c', sans-serif;
  font-weight:400;
  font-size:2.2em;
  margin-bottom:2%;
  color:#190F51;
  letter-spacing : 0.05em;
  text-align: center;
}

@media screen and (max-width: 568px) {
.page-title h2{
  font-size:1.6em;
  letter-spacing : 0em;
}
}

.page-title p {
  font-size:16px;
  padding:0 2% 5px;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  line-height:1.8;
  text-align: center;
}

@media screen and (max-width: 810px) {
.page-title p {
  font-size:1em;
}
}

/* .bousui-box
--------------------------------------------------*/
.bousui-box {
  position: relative;
}

.bousui-box #dot {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  background-image: url(../images/dot.gif);
  opacity: 0.95;
}

#bs-contents{
  width: 100%;
  padding:3% auto 5%;
  position: relative;
  z-index: 0;
}

.bosi-tit {
  padding:5% 0;
  text-align: center;
}

.bosi-tit img {
  display: inline-block;
  vertical-align: middle;
  margin-left:0px;
  margin-right:0px;
  margin-top:-10px;
  width:auto;
  height:130px;
  z-index: -1;
}

@media screen and (max-width: 810px) {
.bosi-tit img {
  height:100px;
  margin-left:5px;
  margin-right:5px;
}
}

@media screen and (max-width: 568px) {
.bosi-tit img {
  width:280px;
  display: block;
  height:auto;
  margin:5px auto;
}
}

.bosi-tit p{
  font-size:4.4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:800;
  color:#FFF;
  vertical-align: middle;
  line-height:1.4;
  letter-spacing : 0em;
}

@media screen and (max-width: 810px) {
.bosi-tit p{
 font-size:1.8em;
}
}

.bosi-tit h2{
  font-size:4.4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:800;
  color:#FFF;
  vertical-align: middle;
  line-height:1.4;
  letter-spacing : 0em;
}

@media screen and (max-width: 810px) {
.bosi-tit h2{
 font-size:2.6em;
}
}

@media screen and (max-width: 568px) {
.bosi-tit p{
 font-size:2em;
 font-weight:500;
}

.bosi-tit h2{
 font-size:1.6em;
 font-weight:500;
}
}

.bosi-tit strong{
  color:#FFF000;
  font-size:1.1em;
}

.bosi-top{
  margin:1% 0;
  text-align: center;
}

.bosi-title{
  background:#2E57A5;
  color:#FFF;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 500;
  font-size:1.75em;
  padding:10px 30px 15px;
  position: relative;
  margin-bottom:15px;
  display:inline-block;
  -webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px;
}

@media screen and (max-width: 810px) {
.bosi-title{
  font-size:1.5em;
  display:block;
}
}

@media screen and (max-width: 568px) {
.bosi-title{
  font-size:1.3em;
  margin-bottom:20px;
}
}

.bosi-title::after {
 position: absolute;
 top: 100%;
 left: 50%;
 margin-left: -5px;
 content: ' ';
 border: 10px solid transparent;
 border-top-color: #2E57A5;
}

.bousui_list{
  width:100%;
  text-align: center;
  padding-bottom:3%;
}

@media screen and (max-width: 568px) {
.bousui_list{
  padding-bottom:0;
}
}

.bousui_list li{
  width:22%;
  box-sizing: border-box;
  position: relative;
  display:inline-block;
  vertical-align:top;
  margin:2% 1.5%;
}

@media screen and (max-width: 810px) {
.bousui_list li{
  width:44%;
  margin: 2% 3%;
}
}

@media screen and (max-width: 568px) {
.bousui_list li{
  width:48%;
  margin: 3% 1% 2%;
}
}

.bousui_list li img.img-circle{border-radius:50%}

.bousui_list li img.img-circle.cir-img {
  width: 100%;
  height: auto;
  box-sizing: border-box;
  border: 5px solid #FFF;
  transition: all 1s;
}

@media screen and (max-width: 568px) {
.bousui_list li img.img-circle.cir-img {
  border: 3px solid #FFF;
}
}

.bousui_list li .thumbnail:hover>img.img-circle.cir-img{
  border: 5px solid #2E57A5;
}

@media screen and (max-width: 568px) {
.bousui_list li .thumbnail:hover>img.img-circle.cir-img{
  border: 3px solid #2E57A5;
}
}

.bousui_list .thumbnail {
  background: transparent;
  border: 0;
}

.bousui_syousai{
  width:100%;
  padding: 5px;
  box-sizing: border-box;
  overflow: hidden;
  height:auto;
}

.bousui_syousai h3{
  color:#FFFB15;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:600;
  line-height:1.6;
  margin:20px 0 10px;
  text-align: center;
  font-size:1.4em;
  letter-spacing:0em;
}

@media screen and (max-width: 1280px) {
.bousui_syousai h3{
  font-size:1.2em;
}
}

@media screen and (max-width: 810px) {
.bousui_syousai h3{
  line-height:1.4;
  margin:15px 0 0;
}
}

@media screen and (max-width: 568px) {
.bousui_syousai h3{
  font-size:1em;
  margin:10px 0 0;
}
}

.bousui_syousai p{
  color:#FFF;
  font-size:14px;
  line-height:1.6;
  text-decoration:none;
  padding: 10px 0;
  text-align: left;
}

@media screen and (max-width: 810px) {
.bousui_syousai p{
  line-height:1.5;
}
}

@media screen and (max-width: 568px) {
.bousui_syousai p{
  font-size:13px;
}
}

.bosi-com {
  padding:0 0 5%;
  text-align: center;
}


@media screen and (max-width: 568px) {
.bosi-com {
  padding:0 0 10%;
}
}


.bosi-com .bsstr{
  font-size:4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:800;
  color:#FFF;
  line-height:1.4;
  letter-spacing : 0em;
  margin-bottom:40px;
}

@media screen and (max-width: 810px) {
.bosi-com .bsstr{
 font-size:2.6em;
 margin-bottom:15px;
}
}

@media screen and (max-width: 568px) {
.bosi-com .bsstr{
 font-size:1.4em;
 margin-bottom:10px;
}
}

.signal {
  animation: signalAnime 1.4s infinite alternate;
  margin-right:5px;margin-left:5px;
}
@keyframes signalAnime{
   0% { color:#FFF; }
 100% { color:#DF0000; }
}

.bosi-com .bsstr2{
  font-size:2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:600;
  color:#FFF;
  line-height:1.6;
  letter-spacing : 0em;
  margin:15px 0;
}

@media screen and (max-width: 810px) {
.bosi-com .bsstr2{
 font-size:1.6em;
 margin-bottom:15px;
}
}

@media screen and (max-width: 568px) {
.bosi-com .bsstr2{
 font-size:1.2em;
 margin:10px 0;
}
}

.bosi-com .bsstr2 strong{
  font-size:2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:800;
  color:#66ACE2;
}

.bosi-com .bsstr2 span{
  color:#FFF000;
}

/* bos-service
--------------------------------------------------*/
.bos-service {
  width:100%;
  position: relative;
}

.bos-service .cont{position:relative;padding:4% 0 4%;width:100%;}
.bos-service .cont>div:before{display:block;position:absolute;top:-17px;left:50%;width:68px;height:17px;margin-left:-34px;background:url(../images/bg_bos-s.png);content:''}

.boplan-tit{
  padding-top:10px;
  text-align: center;
  letter-spacing : 0em;
}

.boplan-tit h4{
  color:#190183;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2.4em;
  margin-bottom:30px;
  line-height:2;
}

@media screen and (max-width: 810px) {
.boplan-tit h4{
 font-size:2em;
 line-height:1.7;
 margin-bottom:20px;
}
}

@media screen and (max-width: 568px) {
.boplan-tit h4{
 font-size:1.3em;
 margin-bottom:15px;
}
}

.boplan-tit p{
  color:#DB0000;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2.4em;
}

@media screen and (max-width: 810px) {
.boplan-tit p{
 font-size:2em;
}
}

@media screen and (max-width: 568px) {
.boplan-tit p{
 font-size:1.5em;
}
}

.boplan-tit .under {
  background: linear-gradient(transparent 70%, #FFF667 70%);
}

.boplan_list{
  width:100%;
  text-align: center;
  padding:4% 0 0;
}

.boplan_list li{
  box-sizing: border-box;
  -webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;
  background:#FFF;
  display:inline-block;
  vertical-align:top;
  position: relative;
  overflow: hidden;
  -webkit-box-shadow: 0 1px 2px 0 rgba(0,0,0,0.22);
  box-shadow: 0 1px 2px 0 rgba(0,0,0,0.22);
  width: 30.3333%;
  margin:1.5%;
}

@media screen and (max-width: 810px) {
.boplan_list li{
  width: 46%;
  margin:2%;
}
}

@media screen and (max-width: 568px) {
.boplan_list li{
  width: 96%;
  margin:2%;
}
}

.ct-wrapper .h_photo{
  width: 100%;
  height:auto;
  margin:0;
  position: relative;
  overflow: hidden;
}

.ct-wrapper .h_photo img{
  width: 100%;
  height:auto;
}

.boplan_list .h_photo {
  position: relative;
  overflow: hidden;
}

.boplan_top{
  width:100%;
  display:block;
  box-sizing: border-box;
  padding:12px 0;
  background:#47BB0F;
  text-align: center;
}

.boplan_top h5{
  display:inline-block;
  color:#FFF;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2em;
}

@media screen and (max-width: 810px) {
.boplan_top{
  padding:10px 0;
}

.boplan_top h5{
 font-size:1.7em;
}
}

@media screen and (max-width: 568px) {
.boplan_top h5{
 font-size:1.4em;
}
}

.cat_txt {
  width:100%;
  position: relative;
  overflow: hidden;
  display:block;
  box-sizing: border-box;
  padding:15px 20px;
  
}

.cat_txt p{
  text-align: left;
  font-size:14px;
  line-height:1.6;
}

/* bos-price
--------------------------------------------------*/
.bos-price {
  width:100%;
  position:relative;
  padding:4% 0 5px;
  background : #FFF88F;
  background: rgba(255, 248, 143, 0.3);
}

.hiyo-ttl{
  text-align: center;
  color:#190183;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2.3em;
}

@media screen and (max-width: 810px) {
.hiyo-ttl{
 font-size:2em;
}
}

@media screen and (max-width: 568px) {
.hiyo-ttl{
 font-size:1.2em;
}
}

.hiyo-info{
  width:100%;
  max-width:1000px;
  position: relative;
  margin:3% auto 0;
  text-align: center;
}

.hiyo-info .sagyoin{
  width:15%;
  display:inline-block;
  margin-right:-5%;
  z-index:1;
  position: relative;
  vertical-align:bottom;
}

@media screen and (max-width: 568px) {
.hiyo-info .sagyoin{
 display:none;
}
}

.hiyo-info .sagyoin img{
  width:100%;
  height:auto;
}

.hiyo-info .hiyo-text{
  width:84%;
  display:inline-block;
  background : #FFF;
  padding:2.5% 4% 2.5% 6%;
  box-sizing: border-box;
  text-align: left;
  z-index:0;
  position: relative;
  -webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;
}

@media screen and (max-width: 568px) {
.hiyo-info .hiyo-text{
  width:100%;
  display:block;
  padding:2% 4%;
}
}

.hiyo-info .hiyo-text p{
  color:#000;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 500;
  font-size:1.15em;
  margin:5px 0;
  line-height:1.8;
}

@media screen and (max-width: 568px) {
.hiyo-info .hiyo-text p{
  font-size:1em;
  line-height:1.6;
}
}

.hiyo-info .hiyo-text span{
  color:#E70000;
}

.hiyo-txt{
  text-align: center;
  color:#000;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2em;
  margin:5% 0 0;
}

@media screen and (max-width: 810px) {
.hiyo-txt{
 margin:3% 0 0;
 font-size:1.6em;
}
}

@media screen and (max-width: 568px) {
.hiyo-txt{
 font-size:1.4em;
}
}

.hiyo-txt strong{
  color:#E70000;
  font-size:1.3em;
  margin-right:5px;
  margin-left:5px;
  letter-spacing : 0.05em;
}

/* topics
--------------------------------------------------*/
#topics{
  width:100%;
  float:left;
  background-image:url(../images/bg_topics.jpg);
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
}

#topics .overlay{
  width:100%;
  padding:4% 0;
  float:left;
  background:rgba(255, 255, 255, 0.8);
}

.jisseki {
  margin:0 auto;
  width:100%;
}

.jisseki_top{
  font-size:2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
  text-align: center;
  margin-bottom:2%;
  color:#1A0E5A;
}

@media screen and (max-width: 810px) {
.jisseki_top{
  font-size:1.4em;
}
}

@media screen and (max-width: 568px) {
.jisseki_top{
  font-size:1.2em;
}
}

@media screen and (max-width: 810px) {
.jisseki{
  text-align: center;
}
}

/* company-box
--------------------------------------------------*/
.company-box{
  width: 100%;
  margin:2% auto 5%;
}

@media screen and (max-width: 810px) {
.company-box{
  padding:0 2%;
  box-sizing: border-box;
}
}

@media screen and (max-width: 568px) {
.company-box{
  padding:0 1%;
}
}

.company-box table{
  width : 100%;
  max-width:950px;
  box-sizing: border-box;
  margin : 0 auto;
  border-top : solid 1px #80B372;
  border-left : solid 1px #80B372;
  border-right : solid 1px #80B372;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  font-size:1.1em;
  background : #FFF;
}

@media only screen and  (max-width: 810px) {
.company-box table{
  font-size:1em;
}
}

@media only screen and  (max-width: 568px) {
.company-box table{
  font-size:0.95em;
}
}

.company-box td{
  padding : 1.7% 2% 1.5%;
  color : #000000;
  border-bottom : solid 1px #80B372;
  vertical-align:middle;
}

.company-box th{
  color : #000;
  border-bottom : solid 1px #80B372;
  border-righ : dashed 1px #80B372;
  text-align : center;
  padding : 1.7% 2% 1.5%;
  background : #EDFFE3;
  width:20%;
  font-weight:normal;
  vertical-align:middle;
}

@media only screen and  (max-width: 810px) {
.company-box th{
  width:25%;
}
}

@media only screen and  (max-width: 568px) {
.company-box th{
  line-height:1.4;
  width:30%;
}

.company-box td{
  padding : 2%;
}
}

.company-box td a {
  color:#12044D;
  text-decoration: none;
}

.company-box td a:hover {
  color:#12044D;
  text-decoration: underline;
}

.cmp-photo{
  width:100%;
  margin:10px auto;
}

.cmp-photo img{
  width:100%;
  height:auto;
}

.gmap{
  width:100%;
  margin:10px auto;
}

@media only screen and  (max-width: 568px) {
.gmap{
  margin:20px auto;
}
}

/* work-bousi
--------------------------------------------------*/
.work-bousi {
  width: 100%;
  margin:2% auto 5%;
  position: relative;
  z-index:1;
  text-align: center;
}

@media screen and (max-width: 810px) {
.work-bousi{
  padding:0 1%;
  box-sizing: border-box;
}
}

.work-bousi h2{
  font-size:3em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:700;
  color:#190183;
  line-height:1.2;
  letter-spacing : 0em;
  text-align: center;
  margin-bottom:3%;
}

@media screen and (max-width: 810px) {
.work-bousi h2{
 font-size:2em;
 padding-top:3%;
}
}

@media screen and (max-width: 568px) {
.work-bousi h2{
 font-size:1.5em;
}
}

.bous-text{
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#000;
  line-height:1.8;
  letter-spacing : 0em;
  margin-bottom:3%;
  text-align: center;
}

@media screen and (max-width: 568px) {
.bous-text{
  font-size:1em;
  line-height:1.6;
}
}

.bous-text strong{
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:600;
  color:#FF4200;
}

@media screen and (max-width: 568px) {
.skil-text strong{
  font-size:1.1em;
}
}

.bous-photos{
  display:block;
  width:100%;
}

.work-bousi .wd50{
  display:inline-block;
  vertical-align:top;
  margin:1.5%;
  box-sizing: border-box;
  width:47%;
  -moz-box-shadow: 0 0 5px #ccc;
  -webkit-box-shadow: 0 0 5px #ccc;
  box-shadow: 0 0 5px #ccc;
  background: #fff;
  padding:5px;
}

.work-bousi .wd501{
  display:inline-block;
  vertical-align:middle;
  margin:1.5%;
  box-sizing: border-box;
  width:47%;
  -moz-box-shadow: 0 0 5px #ccc;
  -webkit-box-shadow: 0 0 5px #ccc;
  box-shadow: 0 0 5px #ccc;
  background: #fff;
  padding:5px;
}

.work-bousi .wd502{
  display:inline-block;
  vertical-align:middle;
  margin:1.5%;
  box-sizing: border-box;
  width:47%;
  text-align: left;
  line-height:2;
}

.work-bousi .wd30{
  display:inline-block;
  vertical-align:top;
  margin:1%;
  box-sizing: border-box;
  width:31.3333%;
  -moz-box-shadow: 0 0 5px #ccc;
  -webkit-box-shadow: 0 0 5px #ccc;
  box-shadow: 0 0 5px #ccc;
  background: #fff;
  padding:5px;
}

@media screen and (max-width: 810px) {
.work-bousi .wd30{
  margin:1.5%;
  width:47%;
}
}

@media screen and (max-width: 568px) {
.work-bousi .wd50{
  display:block;
  margin:4% 2%;
  width:96%;
}

.work-bousi .wd501{
  display:block;
  margin:4% 2%;
  width:96%;
}

.work-bousi .wd502{
  display:block;
  margin:4% 2%;
  width:96%;
  line-height:1.6;
}


.work-bousi .wd30{
  display:block;
  margin:4% 2%;
  width:96%;
}
}

.work-bousi img{
  width:100%;
  height:auto;
}

.work-bousi h3{
  margin:10px 0 5px;
  font-size:1.5em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:600;
  color:#38AF28;
}

.bous-photos p span{
  font-size:0.9em;
  color:#FF4200;
}

.work-bousi p{
  padding:0 2% 10px;
}

.bous-texto{
  margin:2% auto;
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  line-height:2;
}

@media screen and (max-width: 810px) {
.work-bousi h3{
  font-size:1.3em;
}

.bous-photos p{
  text-align: left;
  font-size:14px;
}
}

@media screen and (max-width: 568px) {
.bous-texto{
  font-size:1em;
  line-height:1.8;
  text-align: left;
}
}

@media screen and (max-width: 568px) {
.bous-texto{
  font-size:1em;
  line-height:1.8;
  text-align: left;
}
}

/** RESET AND LAYOUT
===================================*/
.work-bousi .bx-wrapper {
  position: relative;
  margin: 0;
  padding: 0;
  width:100%;
}

.work-bousi .bx-wrapper img{
  width:100%;
  height:auto;
}


/* LOADER */

.work-bousi .bx-wrapper .bx-loading {
  min-height: 50px;
  background: url(../images/bx_loader.gif) center center no-repeat #fff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}

/* PAGER */

.work-bousi .bx-wrapper .bx-pager {
  text-align: center;
  font-size: .75em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  z-index:10;
  position: absolute;
  bottom: 1px;
  width:100%;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto-item {
  display: inline-block;
  *zoom: 1;
  *display: inline;
}

.work-bousi .bx-wrapper .bx-controls-auto {
  display: none;
}

.work-bousi .bx-wrapper .bx-pager.bx-default-pager a {
  background: #FFF;
  background: rgba(255, 255, 255, 0.6);
  text-indent: -9999px;
  display: block;
  width: 7px;
  height: 7px;
  margin: 0 5px;
  outline: 0;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

.work-bousi .bx-wrapper .bx-pager {
  font-size: .7em;
  bottom: 0;
}
.work-bousi .bx-wrapper .bx-pager.bx-default-pager a {
  width: 6px;
  height: 6px;
  margin: 0 4px;
}

.work-bousi .bx-wrapper .bx-pager.bx-default-pager a:hover,
.work-bousi .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #FFF;
}

/* DIRECTION CONTROLS (NEXT / PREV) */

.work-bousi .bx-wrapper .bx-prev:hover,.bx-wrapper .bx-next:hover {
  filter:alpha (opacity=70);
  -moz-opacity:0.70;
  opacity:0.70;
  background: #000;
}

.work-bousi .bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}

.work-bousi .bx-wrapper .bx-prev {
 left: 10px;
}
.work-bousi .bx-wrapper .bx-next {
 right: 10px;
}

.work-bousi .bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -25px;
  outline: 0;
  text-indent: -9999px;
  z-index: 99;
  border-radius: 50%;
  width: 50px;
  height: 50px;
}
.work-bousi .bx-wrapper .bx-controls-direction a:before,
.work-bousi .bx-wrapper .bx-controls-direction a:after {
 content: '';
 position: absolute;
 top: 16px;
 left: 12px;
}
.bx-wrapper .bx-controls-direction a:after {
 width: 16px;
 height: 16px;
 border-top: 1px solid #fff;
 border-right: 1px solid #fff;
 transform: rotate(45deg);
}

.work-bousi .bx-wrapper .bx-controls-direction a.bx-prev:after {
 transform: rotate(-135deg);
 left: 20px;
}

.work-bousi .bx-wrapper .bx-prev {
 left: 5px;
}
.work-bousi .bx-wrapper .bx-next {
 right: 5px;
}
.work-bousi .bx-wrapper .bx-controls-direction a {
  position: absolute;
  margin-top: -15px;
  width: 30px;
  height: 30px;
}

.work-bousi .bx-wrapper .bx-controls-direction a:before,
.work-bousi .bx-wrapper .bx-controls-direction a:after {
 content: '';
 position: absolute;
 top: 10px;
 left: 7px;
}

.work-bousi .bx-wrapper .bx-controls-direction a:after {
 width: 10px;
 height: 10px;
}

.work-bousi .bx-wrapper .bx-controls-direction a.bx-prev:after {
 left: 12px;
}

/* skil-up
--------------------------------------------------*/
.skil-up {
  width: 100%;
  margin:1.5% auto 5%;
  position: relative;
  z-index:1;
  text-align: center;
}

.skil-up h2{
  font-size:2.4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:700;
  color:#190183;
  line-height:1.2;
  letter-spacing : 0em;
  text-align: center;
  margin-bottom:3%;
}

@media screen and (max-width: 810px) {
.skil-up h2{
 font-size:2em;
 padding-top:3%;
}
}

@media screen and (max-width: 568px) {
.skil-up h2{
 font-size:1.5em;
}
}

.skil-text{
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#000;
  line-height:1.8;
  letter-spacing : 0em;
  margin-bottom:3%;
  text-align: center;
}

@media screen and (max-width: 568px) {
.skil-text{
  font-size:1em;
  line-height:1.6;
}
}

.skil-text strong{
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:600;
  color:#FF4200;
}

@media screen and (max-width: 568px) {
.skil-text strong{
  font-size:1.1em;
}
}

.skil-up li{
  width:50%;
  display:inline-block;
  vertical-align:top;
  padding:1%;
  box-sizing: border-box;
}

@media screen and (max-width: 568px) {
.skil-up li{
  width:100%;
  display:block;
  padding:2%;
}
}

.skil-up li img{
  width:100%;
  height:auto;
  -moz-box-shadow: 0 0 5px #ccc;
  -webkit-box-shadow: 0 0 5px #ccc;
  box-shadow: 0 0 5px #ccc;
  background: #fff;
  padding:5px;
  box-sizing: border-box;
}

/* work-list
--------------------------------------------------*/
.work-list {
  width: 100%;
  margin:1.5% auto 5%;
  position: relative;
  z-index:1;
  text-align: center;
}

.jk-box{
  width: 100%;
  margin:3% auto 0;
  position: relative;
}

.jk-box table{
  width: 100%;
  box-sizing: border-box;
  margin : 0 auto;
  border-top : solid 1px #80B372;
  border-left : solid 1px #80B372;
  border-right : solid 1px #80B372;
  font-size:14px;
  background : #FFF;
}

@media screen and (max-width: 568px) {
.jk-box table{
  font-size:13px;
}
}

.jk-box td{
  padding : 1.5% 1% 1.3%;
  color : #000000;
  border-bottom : solid 1px #80B372;
  border-right : dotted 1px #80B372;
  vertical-align:middle;
}

.jk-box th{
  color : #000;
  border-bottom : solid 1px #80B372;
  border-right : dotted 1px #80B372;
  text-align : center;
  padding : 1.5% 1% 1.3%;
  background : #EDFFE3;
  font-weight:normal;
  vertical-align:middle;
}

.jk-box .w60{
  width:45%;
}

.jk-box .w20{
  width:20%;
}

.jk-box .w10{
  width:15%;
}

@media screen and (max-width: 810px) {
.jk-box .w60{
  width:42.5%;
}

.jk-box .w10{
  width:17.55%;
}
}

/* contact-box
--------------------------------------------------*/
.contact-box {
  width: 100%;
  margin:0 auto 5%;
  position: relative;
  z-index:1;
  text-align: center;
}

@media screen and (max-width: 810px) {
.contact-box {
  padding:0 2%;
  box-sizing: border-box;
  margin:0 auto 8%;
}
}

.contact-box dl{
  width:100%;
  max-width:800px;
  margin:3% auto;
}

@media screen and (max-width: 810px) {
.contact-box dl{
  width:96%;
}
}

.contact-box dt{
  width:50%;
  display:inline-block;
  vertical-align:top;
  position: relative;
  padding:2%;
  box-sizing: border-box;
  background-color: #E42901;
  color:#FFF;
}

@media screen and (max-width: 810px) {
.contact-box dt{
  width:100%;
}
}

.contact-box dt a {
  color:#FFF;
  text-decoration: none;
}

.contact-box dt a:hover {
  color:#FFF;
  text-decoration: none;
}

.contact-box dd{
  width:50%;
  display:inline-block;
  vertical-align:top;
  position: relative;
  padding:2%;
  box-sizing: border-box;
  background: #12044D;
  color:#FFF;
}

@media screen and (max-width: 810px) {
.contact-box dd{
  width:100%;
}
}

.contact-box dd a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: 100%;
}

.contact-box dd a:hover {
  opacity: 0.4;
  z-index: 1;
  background-color: #FFF;
}

.contact-box .nmb{
  font-size:1.25em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
}

@media screen and (max-width: 810px) {
.contact-box .nmb{
  font-size:1.15em;
}
}

.contact-box .ml{
  font-size:1.25em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
}

@media screen and (max-width: 810px) {
.contact-box .ml{
  font-size:1.15em;
}
}

.contact-box .fas{
  margin-right:5px;
}

.contact-box .tm{
  margin-top:5px;
  font-size:14px;
}

@media screen and (max-width: 810px) {
.contact-box .tm{
  font-size:13px;
}
}

/* flow-box
--------------------------------------------------*/
.flow-box{
  width: 100%;
  max-width:1000px;
  margin:5% auto 5%;
}

@media screen and (max-width: 810px) {
.flow-box{
  padding:0 2%;
  box-sizing: border-box;
  margin:5% auto 3%;
}
}

@media screen and (max-width: 568px) {
.flow-box{
  margin:5% auto 1%;
}
}

.flow_list{
  width:100%;
  height:auto;
  position: relative;
  display:block;
}

@media screen and (max-width: 810px) {
.flow_list{
  float:left;
}
}

.flow-box .arrow {
  background	: url("../images/bg_arrow.gif") ;
  background-position: 50px 0;
  background-repeat: repeat-y;
}

@media screen and (max-width: 568px) {
.flow-box .arrow {
  background	: url("../images/bg_arrow.gif") ;
  background-position: 40px 0;
  background-repeat: repeat-y;
}
}

.flow_icon {
  width:100px;
  height:100px;
  border-radius:50px;
  background:#84CE6F;
  margin:0 5% 4% 0;
  display:inline-block;
  vertical-align:top;
}

@media screen and (max-width: 810px) {
.flow_icon {
  float:left;
  margin:0 5% 5% 0;
  display:initial;
}
}

@media screen and (max-width: 568px) {
.flow_icon {
  width:80px;
  height:80px;
  margin:0 20px 40px 0;
}
}

.flow_icon p {
  width:100%;
  height:100%;
  text-align:center;
  font-size:1.3em;
  color:#333;
  padding-top:33%;
  font-family: 'El Messiri', sans-serif;
  text-transform: uppercase;
}

.flow_icon big {
	padding-left:5px;
}

@media screen and (max-width: 568px) {
.flow_icon p {
	font-size:1.1em;
}
}

.flow_text{
  line-height:1.6;
  text-align: left;
  display:inline-block;
  width:80%;
  vertical-align:middle;
}

@media screen and (max-width: 810px) {
.flow_text{
  width:77%;
  float:left;
  display:initial;
}
}

@media screen and (max-width: 568px) {
.flow_text{
  width:67%;
  line-height:1.4;
}
}

.flow_text dl{
  width:100%;
  display:block;
}

@media screen and (max-width: 810px) {
.flow_text dl{
  width:100%;
  
}
}

.flow_text dt{
  width:65%;
  display:inline-block;
  vertical-align:middle;
  margin-right:4%;
  padding-top:8px;
}

@media screen and (max-width: 810px) {
.flow_text dt{
  width:100%;
  padding-top:0;
  margin:1% 0 25px;
}
}

@media screen and (max-width: 568px) {
.flow_text dt{
  margin:1% 0 15px;
}
}

.flow_text dd{
  width:30%;
  display:inline-block;
  vertical-align:top;
  background:#FFF;
  padding:5px;
  box-sizing:border-box;
  -moz-box-shadow: 0 0 5px #ccc;
  -webkit-box-shadow: 0 0 5px #ccc;
  box-shadow: 0 0 5px #ccc;
  margin-bottom:25px;
}

@media screen and (max-width: 810px) {
.flow_text dd{
  width:100%;
  margin:0 0 5%;
}
}

@media screen and (max-width: 568px) {
.flow_text dd{
  margin:0 0 25px;
}
}

.flow_text dd img{
  width:100%;
  height:auto;
}

.flow_text h3{
  font-size:1.3em;
  margin-bottom:7px;
  letter-spacing : 0.05em;
  color:#190183;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
}

.flow_text p{
  font-size:1em;
}

@media screen and (max-width: 568px) {
.flow_text h3{
  font-size:1.1em;
  margin-bottom:5px;
  letter-spacing : 0em;
}

.flow_text p{
  font-size:0.8em;
}
}

.flow_text a {
  color: #C42908;
  text-decoration: underline;
}

.flow_text a:hover {
  color: #C42908;
  text-decoration: none;
}

/* sin-tit
--------------------------------------------------*/
.sin-tit {
  margin:3% 0;
  text-align: center;
}

@media screen and (max-width: 568px) {
.sin-tit {
  margin:4% 0 5%;
}
}

.sin-tit img {
  display: inline-block;
  vertical-align: middle;
  margin-left:5px;
  margin-right:5px;
  width:100px;
  height:auto;
}

.sin-tit p{
  font-size:4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:800;
  color:#190183;
  vertical-align: middle;
  line-height:1.2;
  letter-spacing : 0em;
}

@media screen and (max-width: 810px) {
.sin-tit img {
  width:80px;
}

.sin-tit p{
 font-size:2.5em;
}
}

@media screen and (max-width: 568px) {
.sin-tit img {
  width:60px;
}

.sin-tit p{
 font-size:1.65em;
}
}

.sin-tit strong{
  color:#E60012;
  font-size:1.4em;
  margin-right:5px;
  margin-left:5px;
}

@media screen and (max-width: 810px) {
.sin-tit strong{
 font-size:1.35em;
 margin-right:2px;
 margin-left:2px;
}
}

@media screen and (max-width: 568px) {
.sin-tit strong{
 font-size:1.25em;
}
}

.ira-top{
  margin:1% 0;
  text-align: center;
}

@media screen and (max-width: 810px) {
.ira-top{
 margin:4% 0;
}
}

.ira-title{
  background:#2FAC0B;
  color:#FFF;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 500;
  font-size:1.75em;
  padding:10px 30px 15px;
  position: relative;
  margin-bottom:10px;
  display:inline-block;
}

@media screen and (max-width: 810px) {
.ira-title{
  font-size:1.5em;
  display:block;
}
}

@media screen and (max-width: 568px) {
.ira-title{
  font-size:1.3em;
  margin-top:10px;
  margin-bottom:10px;
}
}

.ira-title::after {
 position: absolute;
 top: 100%;
 left: 50%;
 margin-left: -5px;
 content: ' ';
 border: 10px solid transparent;
 border-top-color: #2FAC0B;
}

.tuyomi-box{
 width:100%;
 margin:2% 0 5%;
}

.tuyomi-box h3{
  color:#E60012;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2em;
  text-align: center;
  margin-bottom:2%;
}

@media screen and (max-width: 568px) {
.tuyomi-box h3{
 font-size:1.1em;
}
}

.tuyomi-box .tum-ttx{
  color:#000;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 500;
  font-size:1.45em;
  text-align: center;
  
}

@media screen and (max-width: 568px) {
.tuyomi-box .tum-ttx{
 font-size:1.1em;
}
}

.tuyomi-syousai{
 width:100%;
 margin:3% auto 0;
 max-width:1000px;
 text-align: center;
}

.tuyomi-info{
 width:48%;
 margin:0 1px;
 display: inline-block;
 vertical-align: top;
 text-align: left;
 background:#EEEEEE;
}

@media screen and (max-width: 568px) {
.tuyomi-info{
 width:98%;
 margin:1%;
 display: block;
}
}

.tuym-ttl{
 display: block;
 text-align: center;
 color:#FFF;
 background:#2E57A5;
 padding:10px 0;
 font-family: 'Noto Sans Japanese', sans-serif;
 font-weight: 500;
 font-size:1.2em;
}

.tuym-ttl span{
 color:#FFF000;
}

.tuyomi-info ul{
  width:100%;
  padding:2% 3%;
  box-sizing: border-box;
}

.tuyomi-info li{
  display:block;
  padding:0 0 0 20px;
  margin:5px 0;
  background-size:14px 14px;
  background-image: url(../images/list-mark.png);
  background-repeat: no-repeat;
  background-position: left 4px;
}

@media screen and (max-width: 810px) {
.tuyomi-info li{
  font-size:14px;
}
}

.tuyomi-info li span{
 color:#E60012;
}

.ira-syudan{
  position: relative;
  overflow: hidden;
  margin: 0;
  padding : 1% 0 0;
  width: 100%;
}

.ira-syudan:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
  height: 80%;
  margin: 0 -10% 0;
  background : #FFF88F;
  background: rgba(255, 248, 143, 0.3);
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: rotate(5deg);
  -ms-transform: rotate(5deg);
  transform: rotate(5deg);
  z-index: 1;
}

/*.ira-syudan:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 120%;
  height: 80%;
  margin: 0 -10% 0;
  background	:#84CE6F;
  -webkit-transform-origin: right center;
  -ms-transform-origin: right center;
  transform-origin: right center;
  -webkit-transform: rotate(-3deg);
  -ms-transform: rotate(-3deg);
  transform: rotate(-3deg);
  z-index: 0;
}*/

@media screen and (max-width: 568px) {
.ira-syudan:before {
  width: 150%;
  margin: 0 -25%;
}

/*.ira-syudan:after {
  width: 150%;
  margin: 0 -25%;
}*/
}

.ira-syudan .zin{
  position: relative;
  z-index: 2;
}

.syudan-tit{
  padding-top:10px;
  text-align: center;
  letter-spacing : 0em;
}

.syudan-tit h4{
  color:#000;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2em;
  margin-bottom:30px;
}

@media screen and (max-width: 810px) {
.syudan-tit h4{
  font-size:1.4em;
  margin-bottom:15px;
}
}

@media screen and (max-width: 568px) {
.syudan-tit h4{
  font-size:1.25em;
}
}

.syudan-tit p{
  color:#190183;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:1.7em;
}

@media screen and (max-width: 810px) {
.syudan-tit p{
  font-size:1.25em;
  margin-bottom:30px;
}
}

@media screen and (max-width: 568px) {
.syudan-tit p{
  font-size:1.2em;
  margin-bottom:25px;
}
}

.syudan-tit span{
 color:#E60012;
 padding-right:5px;
}

.difi-list{
  width:100%;
  max-width:900px;
  margin:5% auto 2%;
  position: relative;
  background:#FFF;
  box-sizing: border-box;
  padding:1% 2% 2%;
  -webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;
}

@media screen and (max-width: 810px) {
.difi-list{
  width:98%;
  padding:1% 3% 4%;
}
}

@media screen and (max-width: 568px) {
.difi-list{
  width:98%;
  padding:1% 4% 5%;
}
}

.difi-ttl{
  width:100%;
  margin:5px 0 15px;
  padding:0 0 0 80px;
  box-sizing: border-box;
  text-align: left;
}

@media screen and (max-width: 810px) {
.difi-ttl{
  padding:0 0 0 60px;
  margin:5px 0 10px;
}
}

.difi-ttl p{
  color:#230C83;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:1.7em;
}

@media screen and (max-width: 810px) {
.difi-ttl p{
  font-size:1.4em;
  line-height:1.4;
}
}

@media screen and (max-width: 568px) {
.difi-ttl p{
  font-size:1.25em;
}
}

.difi-ttl2{
  width:100%;
  margin:5px 0 15px;
  box-sizing: border-box;
  text-align: center;
}

@media screen and (max-width: 810px) {
.difi-ttl2{
  margin:5px 0 10px;
}
}

.difi-ttl2 p{
  color:#230C83;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:1.7em;
}

@media screen and (max-width: 810px) {
.difi-ttl2 p{
  font-size:1.4em;
  line-height:1.4;
}
}

@media screen and (max-width: 568px) {
.difi-ttl2 p{
  font-size:1.25em;
}
}

.dif{
  position: absolute;
  top: -15px;
  left:-15px;
  z-index:1;
  width:100px;
  height:100px;
  border-radius: 50%;
  color:#FFF;
  text-align: center;
  font-size:15px;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 400;
  line-height:1;
  background : #30AD0D;
}

@media screen and (max-width: 810px) {
.dif{
  width:65px;
  height:65px;
  font-size:11px;
  top: -8px;
  left:-8px;
}
}

.dif .os_tx{padding-top:30px;}
.dif .os_nm{padding-top:7px;font-size:1.8em;font-family: 'Roboto', sans-serif; font-weight:600;}

@media screen and (max-width: 810px) {
.dif .os_tx{padding-top:18px;}
.dif .os_nm{padding-top:5px;}
}

.difi-ph{
  width:45%;
  display:inline-block;
  vertical-align: top;
}

@media screen and (max-width: 810px) {
.difi-ph{
  width:100%;
  display:block;
}
}

.difi-ph img{
  width:100%;
  height:auto;
}

.difi-phtL{
  width:100%;
  display:block;
  text-align: left;
}

.difi-phL img{
  width:100%;
  height:auto;
}

.difi-text{
  width:50%;
  display:inline-block;
  margin-left:3%;
  vertical-align: top;
  text-align: left;
}

@media screen and (max-width: 810px) {
.difi-text{
  width:100%;
  display:block;
  padding:2.5% 1.5% 0;
  box-sizing: border-box;
  margin-left:0;
}
}

.difi-textL{
  width:100%;
  display:block;
  padding:2.5% 1.5% 0;
  box-sizing: border-box;
  text-align: left;
}

.difi-text .dtxt{
  color:#000;
  line-height:1.8;
  margin-bottom:5px;
}

.difi-text span,.difi-textL span{
 color:#E60012;
}

.pro_bt{
  letter-spacing	: 0.05em;
  margin-top:20px;
  font-size:14px;
  text-align: left;
}

@media screen and (max-width: 810px) {
.proR .protx{
  margin:5px 0;
  line-height:1.6;
  font-size:0.95em;
}

.pro_bt{
  text-align: center;
  margin-top:15px;
  margin-bottom:5px;
}
}

.pro_bt a{color:#FFF;text-decoration:none;background-color:#E80114;padding:5px 15px 5px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;}
.pro_bt a:hover{color:#FFF;text-decoration:none;background-color:#000;}

/* яЉ̏ڍ
--------------------------------------------------*/
#jisseki_syousai {
  width: 100%;
  margin: 0 auto 0;
}

@media only screen and  (max-width: 810px) {
#jisseki_syousai {
  padding:0 1%;
  box-sizing: border-box;
}
}

.jisseki_info {
  width: 100%;
  margin: 0 auto 5px;
}

.jisseki_info h3{
  font-size:1.3em;
  letter-spacing : 0.05em;
  color:#190183;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
  padding:0 2% 8px;
  border-bottom:1px solid #190183;
  margin-bottom:10px;
  box-sizing: border-box;
  width:100%;
  line-height:1.4;
  font-size   : 1.7em;
}

@media only screen and  (max-width: 568px) {
.jisseki_info h3{
  font-size   : 18px;
  padding : 3px 0 5px 3px;
  letter-spacing  : 0em;
}
}

.jisseki_info .marker{
  padding:0 5px;
  font-size:1.1em;
  color:#35AE12;
  margin-bottom:5px;
}

@media only screen and  (max-width: 568px) {
.jisseki_info .marker{
  font-size:1em;
  margin-bottom:0;
}
}

.jisseki_info .marker span{
  color:#000;
  padding-left:5px;
  padding-right:25px;
  font-size:0.9em;
}

.jis_cat{
  padding:0 5px;
  width:100%;
  box-sizing: border-box;
  margin-bottom:10px;
}

@media only screen and  (max-width: 568px) {
.jis_cat{
  margin-bottom:5px;
}
}

.jis_cat li{
  display:inline-block;
  margin:5px;
  font-size:14px;
  color:#FFF;
  line-height:1;
  padding:5px 10px;
  -webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;
}

@media only screen and  (max-width: 568px) {
.jis_cat li{
  font-size : 13px;
}
}

.jis_cat .nct01 { background:#FC492E; }
.jis_cat .nct02 { background:#67C611; }
.jis_cat .nct03 { background:#4472C4; }
.jis_cat .nct04 { background:#48B7A4; }
.jis_cat .nct05 { background:#E68327; }
.jis_cat .nct06 { background:#9A6DB5; }
.jis_cat .nct07 { background:#F75881; }
.jis_cat .nct08 { background:#A67126; }

.jisseki_photo {
  width: 100%;
  margin: 0 auto;
}

.jisseki_ex {
  width: 100%;
  margin: 0 auto;
  float:left;
}

.jisseki_ex h4 {
  width:100%;
  box-sizing: border-box;
  padding:10px 15px 8px;
  margin-top:25px;
  border-bottom:2px solid #190183;
  line-height:1.2;
  color:#190183;
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
  background-color:#EAF1FF;
}

@media screen and (max-width: 568px) {
.jisseki_ex h4 {
  font-size:1.05em;
  margin-top:15px;
}
}


.jisseki_ex h5 {
  width:100%;
  box-sizing: border-box;
  padding:10px 15px 8px;
  margin-top:25px;
  border-bottom:2px solid #E60012;
  line-height:1.2;
  color:#v;
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
  background-color:#FEF0F1;
  color:#E60012;
}

@media screen and (max-width: 568px) {
.jisseki_ex h5 {
  font-size:1.05em;
  margin-top:15px;
}
}

.jisseki_ex .far,.jisseki_ex .fas {
  margin-right:5px;
}

.jis_text{
  padding:1% 2%;
  width:100%;
  box-sizing: border-box;
  margin-bottom:20px;
  background-color:#EAF1FF;
  color:#000;
}

@media screen and (max-width: 568px) {
.jis_text{
  margin-bottom:15px;
}
}

.jis_text p {
  margin:5px 0;
  line-height:1.8;
}

@media screen and (max-width: 810px) {
.jis_text p {
  margin:5px 0;
  line-height:1.6;
  font-size:14px;
}
}

.koe_text{
  padding:1% 2%;
  width:100%;
  box-sizing: border-box;
  margin-bottom:20px;
  background-color:#FEF0F1;
  color:#000;
}

.koe_text p {
  margin:5px 0;
  line-height:1.8;
}

@media screen and (max-width: 810px) {
.koe_text p {
  margin:5px 0;
  line-height:1.6;
  font-size:14px;
}
}

.ko-gaiyo{
  width:100%;
  border:1px solid #2FAC0B;
  float:left;
  margin:40px 0 10px;
  background:#FFF;
}

@media screen and (max-width: 810px) {
.ko-gaiyo{
  margin:25px 0 0;
}
}

@media screen and (max-width: 568px) {
.ko-gaiyo{
  margin:15px 0 0;
}
}

.kgsy{
  width:100%;
  box-sizing: border-box;
  padding: 1% 1.5%;
}

.giy-ttl{
  width:100%;
  color:#2FAC0B;
  padding:10px 3%;
  line-height:1.2;
  margin-bottom:5px;
  background:#EAFFE4;
  border-bottom:1px solid #2FAC0B;
  box-sizing: border-box;
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
  letter-spacing  : 0.05em;
}

@media screen and (max-width: 568px) {
.giy-ttl{
  font-size:1.05em;
  text-align : center;
}
}

.ko-gaiyo dl{
  box-sizing: border-box;
  padding:5px;
  display:inline-block;
  border-bottom:1px dotted #ccc;
  vertical-align: top;
}

.ko-gaiyo dl:last-child {
  border:none;
}

.ko-gaiyo .wt50{
  width:49%;
  margin:0% 0.5% 5px;
}

@media screen and (max-width: 810px) {
.ko-gaiyo .wt50{
  width:98%;
  margin:1%;
}
}

.ko-gaiyo .wt100{
  width:99%;
  margin:0% 0.5% 5px;
}

@media screen and (max-width: 810px) {
.ko-gaiyo .wt100{
  width:98%;
  margin:1%;
}
}

.ko-gaiyo dt{
  float:left;
  padding:1px 0;
  background : #2FAC0B;
  color:#FFF;
  font-size:13px;
  margin:0 15px 0 0;
  width:90px;
  text-align : center;
}

@media screen and (max-width: 568px) {
.ko-gaiyo dt{
  width:80px;
  padding:2px 0 1px;
}
}

.ko-gaiyo dd{
  font-size:0.95em;
  display:table-cell;
  vertical-align:middle;
  padding-top:1px;
}

@media screen and (max-width: 568px) {
.ko-gaiyo dd{
  width:100%;
  clear:both;
  display:block;
  line-height:1.4;
  padding:2% 1% 0;
  box-sizing: border-box;
}
}

.ko-gaiyo dd li{
  margin-right:10px;
  display:inline-block;
}

.return-bt{text-align:center;margin:30px auto 20px;}
.return-bt:before,.return-bt:after{display:table;content:"";}
.return-bt:after{clear:both;}
.return-bt a{font-size:13px;display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px;}
.return-bt a:hover{text-decoration:none;background-color:#f5f5f5;}
.return-bt .disabled a,.return-bt .disabled a:hover{color:#999999;background-color:#fff;cursor:default;}

@media screen and (max-width: 568px) {
.return-bt{text-align:center;margin:15px auto 20px;}
}
}

/* .reform
--------------------------------------------------*/
.reform-info{
  width:100%;
  max-width:1000px;
  position: relative;
  padding:4% auto 0;
  text-align: center;
}

@media only screen and  (max-width: 810px) {
.reform-info{
  padding:5% auto 0;
}
}

.reform-info .nayami{
  width:20%;
  display:inline-block;
  margin-right:-1%;
  z-index:1;
  position: relative;
  vertical-align:top;
}

@media only screen and  (max-width: 810px) {
.reform-info .nayami{
  width:25%;
  padding-top:5%;
}
}

@media only screen and  (max-width: 568px) {
.reform-info .nayami{
  display:none;
}
}

.reform-info .nayami img{
  width:100%;
  height:auto;
}

.reform-info .naym-text{
  width:80%;
  display:inline-block;
  padding:2% 0 0 5%;
  box-sizing: border-box;
  text-align: left;
  z-index:0;
  position: relative;
}

@media only screen and  (max-width: 810px) {
.reform-info .naym-text{
  width:70%;
  padding:5% 0 0 5%;
}
}

@media only screen and  (max-width: 568px) {
.reform-info .naym-text{
  width:100%;
  padding:5% 3% 0;
  box-sizing: border-box;
}
}

.reform-info .naym-text p{
  color:#FFF;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 500;
  font-size:2em;
  line-height:1.6;
  margin:10px 0;
}

@media only screen and  (max-width: 810px) {
.reform-info .naym-text p{
  font-size:1.45em;
}
}

@media only screen and  (max-width: 568px) {
.reform-info .naym-text p{
  font-size:1.15em;
}
}

.reform-info .naym-text span{
  color:#FFF000;
  font-weight: 600;
}

.reform-tit {
  padding:5% 0 140px;
  text-align: center;
}

@media screen and (max-width: 810px) {
.reform-tit {
  padding:5% 0 60px;
}
}

@media screen and (max-width: 568px) {
.reform-tit {
  padding:3% 0 50px;
}
}

.reform-tit img {
  display: inline-block;
  vertical-align: middle;
  margin-left:0px;
  margin-right:0px;
  margin-top:-12px;
  width:auto;
  height:130px;
  z-index: -1;
}

@media screen and (max-width: 810px) {
.reform-tit img {
  height:100px;
  margin-left:5px;
  margin-right:5px;
}
}

@media screen and (max-width: 568px) {
.reform-tit img {
  width:220px;
  display: block;
  height:auto;
  margin:5px auto;
}
}

.reform-tit .under {
  background: linear-gradient(transparent 80%, #FFF667 80%);
}

.reform-tit p{
  font-size:4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:800;
  color:#FFF;
  vertical-align: middle;
  line-height:1.4;
  letter-spacing : 0em;
  margin-bottom:5%;
}

@media screen and (max-width: 810px) {
.reform-tit p{
 font-size:2em;
}
}

@media screen and (max-width: 568px) {
.reform-tit p{
 font-size:2.7em;
}
}

.reform-tit h2{
  font-size:2.4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:800;
  color:#66ACE2;
  vertical-align: middle;
  line-height:1.2;
  letter-spacing : 0em;
}

@media screen and (max-width: 810px) {
.reform-tit h2{
 line-height:1.6;
}
}

@media screen and (max-width: 568px) {
.reform-tit h2{
 font-size:1.55em;
 font-weight:500;
}
}

/* reform-service
--------------------------------------------------*/
.reform-service {
  width:100%;
  position: relative;
}

.reform-service .cont{position:relative;padding:4% 0 0;width:100%;}
.reform-service .cont>div:before{display:block;position:absolute;top:-17px;left:50%;width:68px;height:17px;margin-left:-34px;background:url(../images/bg_bos-s.png);content:''}


.reform-title{
  padding-top:10px;
  text-align: center;
  letter-spacing : 0em;
}

.reform-title h3{
  color:#190183;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2.4em;
  margin-bottom:30px;
  line-height:1.8;
}

@media screen and (max-width: 810px) {
.reform-title h3{
 font-size:2em;
 line-height:1.7;
 margin-bottom:20px;
}
}

@media screen and (max-width: 568px) {
.reform-title h3{
 font-size:1.5em;
 margin-bottom:15px;
}
}

.reform-title p{
  color:#000;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 500;
  font-size:1.3em;
  line-height:1.8;
}

@media screen and (max-width: 810px) {
.reform-title p{
 font-size:1.2em;
}
}

@media screen and (max-width: 568px) {
.reform-title p{
 font-size:1.1em;
}
}

.reform-title .under {
  background: linear-gradient(transparent 70%, #FFF667 70%);
}

.reform-title strong{
  color:#E60012;
  font-weight: 600;
}

.reform_list{
  width:100%;
  text-align: center;
  text-align: left;
  padding:4% 0 0;
}

.reform_list li{
  box-sizing: border-box;
  -webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;
  background:#FFF;
  display:inline-block;
  vertical-align:top;
  position: relative;
  overflow: hidden;
  -webkit-box-shadow: 0 1px 2px 0 rgba(0,0,0,0.22);
  box-shadow: 0 1px 2px 0 rgba(0,0,0,0.22);
  width: 23%;
  margin:1%;
}

@media screen and (max-width: 810px) {
.reform_list li{
  width: 47%;
  margin:1.5%;
}
}

@media screen and (max-width: 568px) {
.reform_list li{
  width: 96%;
  margin:2%;
}
}

.reform_list .h_photo {
  position: relative;
  overflow: hidden;
}

.replan_top{
  width:100%;
  display:block;
  box-sizing: border-box;
  padding:12px 0;
  background:#47BB0F;
  text-align: center;
}

.replan_top h4{
  display:inline-block;
  color:#FFF;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:1.5em;
  letter-spacing : 0.05em;
}

@media screen and (max-width: 810px) {
.replan_top{
  padding:10px 0;
}
}

@media screen and (max-width: 568px) {
.replan_top h4{
 font-size:1.4em;
}
}

.rep_txt {
  width:100%;
  position: relative;
  overflow: hidden;
  display:block;
  box-sizing: border-box;
  padding:15px 20px;
}

@media screen and (max-width: 810px) {
.rep_txt {
  padding:10px 15px;
}
}

.rep_txt p{
  text-align: left;
  font-size:14px;
  line-height:1.6;
}

.reform-other{
  color:#000;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 500;
  font-size:1.3em;
  line-height:2;
  text-align: center;
  margin:5% 0 1%;
}

@media screen and (max-width: 810px) {
.reform-other{
  font-size:1.15em;
  padding:3% 0 1%;
  margin:0;
  line-height:1.8;
}
}

@media screen and (max-width: 568px) {
.reform-other{
 font-size:1em;
 line-height:1.6;
 padding:3% 0;
}
}

.reform-other span{
  color:#E70000;
}

/* reform-price
--------------------------------------------------*/
.reform-price {
  width:100%;
  position:relative;
  padding:4% 0 1px;
  background : #FFF88F;
  background: rgba(255, 248, 143, 0.3);
}

.ref-info{
  width:100%;
  max-width:1000px;
  position: relative;
  margin:0 auto 0;
  text-align: center;
}

.ref-txt{
  text-align: center;
  color:#000;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  font-size:2em;
  margin:0;
}

.ref-txt strong{
  color:#E70000;
  font-size:1.3em;
  margin-right:5px;
  margin-left:5px;
  letter-spacing : 0.05em;
}

/* .renove-box
--------------------------------------------------*/
.renove-box{
  margin:0 auto;
  width: 100%;
  position:relative;
  padding-bottom:1%;
}

.renove-box #dot {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  background : #F0EADE;
  background: rgba(234, 223, 202, 0.5);
  opacity: 0.95;
}

#renove-topimg {
  width: 100%;
  height: 50vh;
  min-height: 400px;
  background-image: url(../images/bg_renove.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% auto ;
  z-index: 1;
  position:relative;
}

@media screen and (max-width: 810px) {
#renove-topimg {
  background-size: cover ;
}
}

@media screen and (max-width: 568px) {
#renove-topimg {
  min-height: 300px;
}
}

.renove-top{
  color:#FFF;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight: 600;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top:-80px;
  width: 100%;
}

.renove-top p{
  text-align: center;
  text-shadow:1px 1px 1px #000;
  font-size:1.7em;
  margin-bottom:15px;
}

.renove-top h2{
  text-align: center;
  text-shadow:1px 1px 1px #000;
  font-size:3em;
}

@media screen and (max-width: 810px) {
.renove-top p{
  font-size:1.5em;
}

.renove-top h2{
  font-size:2.4em;
}
}

@media screen and (max-width: 568px) {
.renove-top p{
  font-size:1.2em;
}

.renove-top h2{
  font-size:2em;
  line-height:1.5
}
}

.renove-contents{
  width: 100%;
  z-index: 1;
  position:relative;
  padding:5% 0 0;
}

.renove-tit {
  text-align: center;
  padding-bottom:3%;
}

@media screen and (max-width: 568px) {
.renove-tit {
  margin-bottom:2%;
}
}

.renove-tit .under {
  background: linear-gradient(transparent 80%, #FFF667 80%);
}

.renove-tit p{
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#000;
  line-height:2;
  letter-spacing : 0em;
}

@media screen and (max-width: 810px) {
.renove-tit p{
 font-size:1.1em;
}
}

.renove-tit h3{
  font-size:2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  color:#000;
  line-height:1.2;
  letter-spacing : 0em;
  font-weight:600;
}

@media screen and (max-width: 810px) {
.renove-tit h3{
 font-size:1.8em;
}
}

@media screen and (max-width: 568px) {
.renove-tit p{
 font-size:1em;
 font-weight:500;
}

.renove-tit h3{
 font-size:1.3em;
 font-weight:500;
}
}

.renove-info{
  width:100%;
  margin:3% 0;
  text-align: center;
}

@media screen and (max-width: 810px) {
.renove-info{
  box-sizing: border-box;
  padding: 0 3%;
}
}

@media screen and (max-width: 568px) {
.renove-info{
  padding: 0 2%;
}
}

.renove-ph {
  display: inline-block;
  vertical-align: top;
  margin-right:2%;
  width:45%;
}

@media screen and (max-width: 810px) {
.renove-ph {
  display: block;
  margin:2% 0;
  width:100%;
}
}

.renove-ph img{
  height:auto;
  width:100%;
}

.renove-txt {
  display: inline-block;
  vertical-align: top;
  margin-left:2%;
  width:50%;
}

@media screen and (max-width: 810px) {
.renove-txt {
  display: block;
  margin:2% 0;
  width:100%;
}
}

.renove-txt p{
  font-size:1.1em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#000;
  line-height:1.8;
  letter-spacing : 0em;
  padding: 1% 0;
  text-align: left;
}

@media screen and (max-width: 810px) {
.renove-txt p{
  font-size:1em;
  line-height:1.6;
  padding: 5px 0;
}
}

.renove-txt p span{
  color:#FF4200;
}

.renove-text{
  font-size:1.4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#000;
  line-height:1.8;
  letter-spacing : 0em;
  padding: 1% 0 0;
  text-align: center;
}

@media screen and (max-width: 568px) {
.renove-text{
  font-size:1em;
  line-height:1.6;
}
}

.renove-text strong{
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:600;
  color:#FF4200;
}

@media screen and (max-width: 568px) {
.renove-text strong{
  font-size:1.1em;
}
}

.reform_merito{
  width:100%;
  margin:5% 0 3%;
  text-align: center;
  box-sizing: border-box;
  -webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;
  background:#FFF;
  padding:2% 2% 1.5%;
  text-align: center;
}

@media screen and (max-width: 810px) {
.reform_merito{
  width:97%;
  margin:5% 1.5% 3%;
}
}

.merito_ttl{
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:600;
  color:#000;
  text-align: center;
  padding: 1% auto;
  margin-bottom:2%;
}

.reform_merito li{
  display: inline-block;
  vertical-align: top;
  margin:0% 1.5%;
  width:47%;
  text-align: left;
}

@media screen and (max-width: 810px) {
.reform_merito li{
  display: block;
  margin:1.5%;
  width:97%;
}
}

.merito_title{
  width:100%;
  padding:0 10px 5px;
  border-bottom:1px solid #000;
  margin-bottom:10px;
  box-sizing: border-box;
  font-size:1.1em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
}

.merito_title span{
  color:#FF4200;
}

.reform_oth{
  padding:7px 0;
}

@media screen and (max-width: 568px) {
.reform_oth{
  padding:3px 0;
}
}

.reform_oth .ro01{
  padding:0;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
}

.reform_oth .ro02{
  padding:5px 5px 5px 10px;
  font-size:13px;
}

/* .water-block
--------------------------------------------------*/
.water-block{
  margin:3% auto 1%;
  width: 100%;
  position:relative;
}

@media screen and (max-width: 810px) {
.water-block{
 margin:5% auto 2%;
}
}

.water-block h2{
  font-size:2.4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:700;
  color:#190183;
  line-height:1.2;
  letter-spacing : 0em;
  text-align: center;
}

@media screen and (max-width: 810px) {
.water-block h2{
 font-size:2em;
}
}

@media screen and (max-width: 568px) {
.water-block h2{
 font-size:1.5em;
}
}

.water-info{
  width:100%;
  margin:5% 0 3%;
  text-align: center;
}

@media screen and (max-width: 810px) {
.water-info{
 padding:0 3%;
 box-sizing: border-box;
}
}

.water-ph {
  display: inline-block;
  vertical-align: top;
  margin-right:2%;
  width:45%;
}

@media screen and (max-width: 810px) {
.water-ph {
  display: block;
  margin:2% 0;
  width:100%;
}
}

.water-ph img{
  height:auto;
  width:100%;
}

.water-txt {
  display: inline-block;
  vertical-align: top;
  margin-left:2%;
  width:50%;
}

@media screen and (max-width: 810px) {
.water-txt {
  display: block;
  margin:2% 0;
  width:100%;
}
}

.water-txt p{
  font-size:1.1em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#000;
  line-height:1.8;
  letter-spacing : 0em;
  padding: 1% 0;
  text-align: left;
}

@media screen and (max-width: 568px) {
.water-txt p{
  padding:2px 5px;
  font-size:1em;
  line-height:1.6;
}
}

.water-txt p span{
  color:#E60012;
}

.water-text{
  font-size:1.4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#000;
  line-height:1.8;
  letter-spacing : 0em;
  padding: 1% 0;
  text-align: center;
}

.water-text strong{
  font-size:1.2em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:600;
  color:#FF4200;
}

.water_merito{
  width:100%;
  margin:5% 0 3%;
  text-align: center;
  box-sizing: border-box;
  -webkit-border-radius:10px;-moz-border-radius:10px;border-radius:10px;
  background:#FFF;
  padding:2% 1.5% 1.5%;
}

@media screen and (max-width: 810px) {
.water_merito{
  width:97%;
  margin:5% 1.5% 3%;
}
}

.water_merito li{
  display: inline-block;
  vertical-align: top;
  margin:0% 1.5%;
  width:47%;
  text-align: left;
}

@media screen and (max-width: 810px) {
.water_merito li{
  display: block;
  margin:1.5%;
  width:97%;
}
}

.water_title{
  width:100%;
  padding:0 10px 5px;
  border-bottom:1px solid #000;
  margin-bottom:10px;
  box-sizing: border-box;
  font-size:1.1em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
}

.water_title span{
  color:#E60012;
}

.water_oth{
  padding:7px 0;
}

.water_oth .ro01{
  padding:0 0 2px;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#190183;
}

.water_oth .ro02{
  padding:5px 5px 5px 10px;
  font-size:13px;
}

/* category_list
--------------------------------------------------*/
.category_list {
  width: 100%;
  margin:0 auto 3%;
  padding-top:3%;
  position: relative;
  z-index:1;
}

@media screen and (max-width: 810px) {
.category_list {
  padding:0 2%;
  box-sizing: border-box;
  margin:4% auto 1%;
}
}

.category_list .sv_ttl{
  font-size: 2.4em;
  background:#3CA803;
  color:#FFF;
  padding:10px 30px;
  display:block;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
  margin-bottom:3%;
  position: relative;
  text-align: center;
}

@media only screen and  (max-width: 810px) {
.category_list .sv_ttl{
  font-size:1.7em;
  
}
}

@media only screen and  (max-width: 568px) {
.category_list .sv_ttl{
  font-size:1.25em;
  padding:10px 2px;
  display:block;
}
}

.category_list .sv_ttl::after {
 position: absolute;
 top: 100%;
 left: 50%;
 margin-left: -5px;
 content: ' ';
 border: 10px solid transparent;
 border-top-color: #3CA803;
}

.category_list .sv_text{
  line-height:2;
  font-size:1.25em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
  color:#1A0E5A;
  text-align: center;
  margin-bottom:2%;
}

@media screen and (max-width: 810px) {
.category_list .sv_text{
  font-size:1.15em;
  line-height:1.8;
  text-align: left;
  padding:10px 1% 0;
}
}

@media screen and (max-width: 568px) {
.category_list .sv_text{
  font-size:1em;
  line-height:1.6;
}
}

.category_list li{
  box-sizing: border-box;
  -webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;
  background:#FFF;
  display:inline-block;
  vertical-align:top;
  position: relative;
  overflow: hidden;
  -webkit-box-shadow: 0 1px 2px 0 rgba(0,0,0,0.22);
  box-shadow: 0 1px 2px 0 rgba(0,0,0,0.22);
}

.category_list a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: 100%;
  z-index: 2;
}

.category_list a:hover {
  opacity: 0.7;
  z-index: 2;
}

.category_list .w50{
  width: 48%;
  margin:1%;
}

.category_list .w50 a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: 100%;
}

.category_list .w50 a:hover {
  background-color: #fff;
  opacity: 0.4;
  z-index: 1;
}

.category_list .w30{
    width: 31.3333%;
	margin:1%;
}

.category_list .w30 a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent: 100%;
}

.category_list .w30 a:hover {
  background-color: #fff;
  opacity: 0.4;
  z-index: 1;
}

@media screen and (max-width: 810px) {
.category_list .w50{
  width: 47%;
  margin:1.5%;
}

.category_list .w30{
  width: 47%;
  margin:1.5%;
}
}

@media screen and (max-width: 568px) {
.category_list .w50{
  width: 96%;
  margin:2%;
}

.category_list .w30{
  width: 96%;
  margin:2%;
}
}

.ct-wrapper {
  width:100%;
  height:auto;
  position: relative;
  overflow: hidden;
 display:block;
}

.ct-wrapper .h_photo{
  width: 100%;
  height:auto;
  margin:0;
  position: relative;
  overflow: hidden;
}

.ct-wrapper .h_photo img{
  width: 100%;
  height:auto;
}

.category_list li .h_photo {
  position: relative;
  overflow: hidden;
}

.cat_txt {
  width:100%;
  position: relative;
  overflow: hidden;
  display:block;
  box-sizing: border-box;
  padding:5px 15px 15px;
}

@media screen and (max-width: 568px) {
.cat_txt {
  width: 100%;
  height:auto;
  padding:5px 10px 10px;
}
}

.cat_txt h3{
  font-size:1.25em;
  margin-top:8px;
  margin-bottom:6px;
  line-height:1.4;
  color:#D22300;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
}

@media screen and (max-width: 810px) {
.cat_txt h3{
  font-size:1.15em;
}
}

.cat_txt p{
  font-size:13px;
  line-height:1.6;
}

.water_baft{
  width:100%;
  margin:5% 0 3%;
  text-align: center;
}

@media screen and (max-width: 810px) {
.water_baft{
 padding:0 3%;
 box-sizing: border-box;
}
}

.water_baft li{
  display: inline-block;
  vertical-align: top;
  margin:1px;
  width:49.5%;
  text-align: left;
}

@media screen and (max-width: 568px) {
.water_baft li{
  width:49%;
}
}

.water_baft li img{
  width:100%;
  height:auto;
}

.water_baft li p{
  padding:5px 10px;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  color:#190183;
  font-size:2em;
}

.water_baft li p span{
  color:#E60012;
}

/* v
--------------------------------------------------*/
.form_box{
  width: 100%;
  margin:4% auto 5%;
}

.form_box .cont_sub{
  line-height:2;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
  font-size:1em;
  margin-bottom:15px;
  line-height: 1.5;
  padding:0 1%;
  text-align: center;
}

.form_box .cont_sub strong{
  font-size:1.4em;
  font-family: 'Roboto', sans-serif;
  font-weight:500;
  color:#E42901;
}

@media screen and (max-width: 810px) {
.form_box .cont_sub{
  font-size:1em;
  line-height: 1.6;
  padding:0 2%;
  margin-bottom:5px;
  text-align: left;
}
}

.form_box .bg_required {
  vertical-align: middle;
  display: inline-block;
  padding: 5px 8px;
  margin: 0 5px;
  color: #fff;
  background: #31AD0E;
  border-radius: 3px;
  font-size: 12px;
  line-height: 1;
}

@media screen and (max-width: 568px) {
.form_box.bg_required {
  font-size: 11px;
}
}

.form_island{
  width: 100%;
  margin:4% auto;
  background:#FFF;
  padding:0;
  max-width:950px;
}

@media screen and (max-width: 810px) {
.form_island{
  width: 98%;
  padding:2%;
  box-sizing: border-box;
}
}

@media screen and (max-width: 568px) {
.form_island{
  margin:5% auto;
}
}

.form_island .under{border-bottom:1px dotted #CCC;}

.form_titl{
  width: 100%;
  margin:0 0 10px;
  background:#11AAA7;
  padding:15px 0 13px;
  text-align: center;
  color:#FFF;
  font-family: 'Kosugi Maru', sans-serif;
  font-weight:500;
  line-height:1;
  font-size:1.4em;
}


.form_box dl{
  width: 100%;
  margin:0;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:400;
}

@media screen and (max-width: 810px) {
.form_box dl{
  box-sizing: border-box;
  padding:15px 4% 10px;
}
}

.form_box dt{
  width: 22%;
  display: inline-block;
  vertical-align: middle;
  padding:1.5% 3% 1.5% 0;
  box-sizing: border-box;
  font-weight:400;
  text-align: right;
  line-height:1;
}

@media screen and (max-width: 810px) {
.form_box dt{
  width: 100%;
  display: block;
  text-align: right;
  padding:0 2% 8px;
  text-align: left;
}
}

.form_box dd{
  width: 76%;
  display: inline-block;
  padding:2% 0 2% 4%;
  box-sizing: border-box;
  vertical-align: middle;
  border-left:1px solid #CCC;
}

@media screen and (max-width: 810px) {
.form_box dd{
  width: 100%;
  padding:10px 2% 5px;
  border-left:none;
  border-top:1px solid #CCC;
}
}

.form_box dd .form_col{
  display: inline-block;
  margin-right:5px;
}

.form_box .mtp005{margin-top:10px;}

@media screen and (max-width: 810px) {
.form_box dd .form_col{
  display: block;
  margin-right:0;
}

.form_box .mtp005{margin-top:10px;}
}

.form_box dd .form_col-w40{
  width: 30%;
  display: inline-block;
  margin-right:25px;
}

@media screen and (max-width: 568px) {
.form_box dd .form_col-w40{
  width: 40%;
  margin-right:1.5%;
}
}

.form_box dd .form_col-w30{
  width: 24%;
  display: inline-block;
  margin-right:1px;
}

@media screen and (max-width: 568px) {
.form_box dd .form_col-w30{
  width: 97%;
  margin-right:0;
  display: block;
  margin-bottom:10px;
}
}

.form_text{
  font-size:13px;
  margin-bottom:5px;
}

.form_text span{
  font-family: 'Roboto', sans-serif;
  font-weight:400;
}

.form_box dd input{
 padding : 8px;
 border:1px solid #CCC;
 -webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;
 color:#000;
 font-size:14px;
 cursor: pointer;
}

.form_box dd .ws95{
  width:99%;
}

@media screen and (max-width: 810px) {
.form_box dd .ws95{
  width:100%;
}
}

.form_box dd .ws90{
  width:99%;
  min-width:400px;
}

@media screen and (max-width: 810px) {
.form_box dd .ws90{
  width:100%;
  min-width:initial;
}
}

.form_box dd .ws80{
  width:80%;
}

@media screen and (max-width: 810px) {
.form_box dd .ws80{
  width:100%;
}
}

.form_box dd .ws30{
  width:30%;
}

@media screen and (max-width: 810px) {
.form_box dd .ws30{
  width:70%;
}
}

.form_input{
  width:100%;
}

.form_box .mbtm10{
  margin-bottom:10px;
}

.form_red{
  color: #e60012;
  width:100%;
  margin-top:10px;
  font-size:0.9em;
}

.form_box dd textarea{
  padding : 8px;
  border:1px solid #CCC;
  -webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;
  cursor: pointer;
  font-size:14px;
}

.form_box input[type=radio],.form_box input[type=checkbox] {
  display: none;
}

.form_box .radio, .form_box .checkbox {
  box-sizing: border-box;
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: inline-block;
  margin: 5px 0 5px;
  padding: 0 8px 0 20px;
  border-radius: 8px;
  vertical-align: middle;
  cursor: pointer;
}

.form_box .radio:hover, .form_box .checkbox:hover {
  background-color:;
}

.form_box .radio:hover:after,.form_box .checkbox:hover:after {
  border-color:;
}

.form_box .radio:after,.form_box .checkbox:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 50%;
  left: 0px;
  display: block;
  margin-top: -7px;
  width: 15px;
  height: 15px;
  border: 2px solid #bbb;
  border-radius: 50%;
  content: '';
}

.form_box .radio:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 3px;
  display: block;
  margin-top: -3px;
  margin-left:1px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #E42901;
  content: '';
  opacity: 0;
}
.form_box input[type=radio]:checked + .radio:before {
  opacity: 1;
}

.form_box .checkbox:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 21px;
  display: block;
  margin-top: -7px;
  width: 5px;
  height: 9px;
  border-right: 3px solid #88D8E9;
  border-bottom: 3px solid #88D8E9;
  content: '';
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.form_box input[type=checkbox]:checked + .checkbox:before {
  opacity: 1;
}

.send_bt {
  width: 100%;
  margin-top:30px;
  text-align: center;
}

@media screen and (max-width: 810px) {
.send_bt {
  margin-top:10px;
}
}

@media screen and (max-width: 568px) {
.send_bt {
  margin-top:0px;
}
}

.send_bt li{
  display:inline-block;
  margin:0 5px;
}

input.conf_bt{
  padding:15px 30px;
  line-height: 1.4;
  background : #E42901;
  color: #fff;
  display:block;
  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
  border-style: none;
  cursor: pointer;
  font-size:1.4em;
  font-family: 'Noto Sans Japanese', sans-serif;
  font-weight:500;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 568px) {
input.conf_bt{
  font-size:1.2em;
}
}

input.conf_bt:hover{
  opacity: 0.8;
}

input.reset_bt{
  padding:10px 15px;
  line-height: 1.4;
  background	: #ACACAC;
  color: #fff;
  display:block;
  -webkit-border-radius:5px;
  -moz-border-radius:5px;
  border-radius:5px;
  border-style: none;
  cursor: pointer;
  font-size:12px;
}

@media screen and (max-width: 810px) {
input.reset_bt{
  padding:8px 12px;
  font-size:11px;
}
}

input.reset_bt:hover{
  opacity: 0.7;
}
