@charset "UTF-8";
/* CSS Document */


/*font-family: source-han-sans-japanese,sans-serif;
font-weight: 500;
font-style: normal;

font-family: source-han-sans-japanese,sans-serif;
font-weight: 700;
font-style: normal;
*/




/*hsla(219,67%,38%,1.00);*/
/*@media (max-width: 768px) */


 /*全要素へbox-sizing */
 * {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}


html {
  /*font表示最適化*/
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  /*font表示最適化 ON*/
  /*  -webkit-font-smoothing: subpixel-antialiased;
 -moz-osx-font-smoothing: auto;*/
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  /*全要素へbox-sizing */
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/*content-box有効
*/
*, ::before, ::after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
}

body {
    font-family: source-han-sans-japanese,"Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    /*font-family: source-han-sans-japanese,sans-serif;*/
    font-weight: 500;
    font-style: normal;
    color: hsla(0,0%,0%,0.80);
    background-color: hsla(0, 0%, 100%, 1.00);
    font-weight: 400;
    line-height: 1.7;
    margin: 0;
    padding: 0;
    width: 100%;    /*height: 100%;*/ /*100%だとモーダルに影響*/
}

@media (max-width: 767px) {
  body {
    /*  font-size: 0.96rem;*/
    font-size: 0.875rem;;
    line-height: 1.4rem;
  }
}

@media all and (-ms-high-contrast:none) { /*IE11*/
 
}

a {
    color: #573E80;
    text-decoration: none;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    border-bottom: 1px dotted #02A755;
    padding-bottom: 0.1rem;
}

a:hover {
    color: #037B41;
}

.fImg a {
     border-bottom: 0px dotted #573E80;
    padding-bottom: 0;
}

/*.underLine{
    text-decoration: underline;    
}



.underLine:hover {
    text-decoration: none;
}*/

.noLinkBorder{
     border-bottom: 0px dotted #573E80;
    padding-bottom: 0; 
}

.no-click{
  pointer-events: none;
}

.linkarrow:after {
    font-family: 'fontello';
    content: '\E801';
    /* content: '>';*/
    /*position: absolute;*/
padding-left:1rem;
    color: #A9A9A9;
    font-weight: 900;
    font-size: 12px;
    display: inline-block;
 vertical-align: middle;
}


.linkpdf {
 
}


.linkpdf:before {
    content: '';/*何も入れない*/
    display: inline-block;/*忘れずに！*/
    width: 30px;/*画像の幅*/
    height: 30px;/*画像の高さ*/
    background-image: url(../img/common/icon_pdf.svg);
    background-size: contain;
    vertical-align: middle;
    margin-right:5px;
}



.sp {
  display: none;
}
@media (max-width: 767px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: block;
  }
}


.loadingicon{
	position: fixed;
	max-width: 200px;
    width:200px;
	/*height:180px;*/
	margin-top: -20px;
	margin-left: -110px;
	top: 50%;
	left: 50%;
	z-index: 999;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
	opacity: 1;
	/*display: none;*/
}

@media screen and (max-width: 750px) {
   .loadingicon{
       max-width: 180px; 
       margin-left: -95px;
       margin-top:-20px;
    }
    
}


.fadeOut {
      opacity: 0;
      }
	  
.fadeIn {
      opacity: 1 !important;
      } 


/*______________________________________text*/

.text-normal{
    font-weight:normal;  
    font-size: 1rem;
}

.text-bold{
    font-weight: bold;    
}

.text-small{
    font-size: 85%;}

p {
    margin-bottom: 1rem;
}

.text-right{
text-align: right;
}


.text-center{
text-align: center;
}


.text-underline{
    border-bottom: 1px solid #000;
    padding-bottom: 0.05rem;
}

.text-alert{
    border-bottom: 1px solid hsla(359,100%,45%,1.00);
    padding-bottom: 0.05rem;
    color: hsla(359,100%,45%,1.00);
    font-weight: bold;
}

.text-caption{
    margin:0.5rem 0;
    line-height:1.2rem;
    text-align: right;
}


.text-kome {
    position: relative;
    margin-left: 1.2rem;
    line-height: 1.3rem;
}
.text-kome:before {
    content: '※';
    display: block;
    position: absolute;
   /* top: 50%;*/
    left: -1.2rem;
    width: 1rem;
   /* margin-top: -.5rem;*/
}

.text-kakomi{
    padding:1rem;
    border-width: 1px;
    border-style: dotted;
}

.text-figure{
    padding: 2rem 2rem ;
    border: 2px solid hsla(151,100%,33%,1.00);
    border-radius: 17px;
    background-color: hsla(0,0%,100%,1.00);
}


.text-comment{
    padding:1rem;
    border-width: 1px;
    border-style: dotted;
	border-radius: 10px;
	 border: 1px dotted hsla(151,100%,33%,1.00);
    background-color: hsla(0,0%,100%,1.00);
	
	font-size: 90%;
	line-height: 1.4rem;
}

.text-comment p{
	   margin-bottom: 0.5rem;
}

.text-comment-title{
	font-size: 110%;
	font-weight: 700;
    color: hsla(151,100%,33%,1.00);	
	margin-bottom: 0.6rem;
}


ul.list{
	margin-left:1rem;
	padding-left:0;
}

ul.list li{
margin-bottom: 0.3rem;
    list-style-type: disc;
    font-size:90%;
    line-height: 1.3rem;
}


ul.list-number{
	margin-left:1.3rem;
	padding-left:0;
}

ul.list-number li{
margin-bottom: 1rem;
    list-style-type: decimal;
}


ol.list-number{
	counter-reset: item;
	padding-left: 0;
	 list-style-type: none;
}

ol.list-number li{
font-size: 85%;
	padding-left:0.25rem;
margin-bottom: 0.5rem;
	line-height: 1.3rem;
    /*list-style-type: decimal;*/
}

ol.list-number li:before {
    counter-increment: item;
    content: counter(item)'）';

    padding-right: .25em;
    color: hsla(151,95%,25%,1.00);
}



.text-figure ul.list{
	margin-left:0rem;
	padding-left:0;
}

.text-figure ul.list li{
  position: relative;
    margin-left: 1.4rem;
    line-height: 1.4rem;
    list-style-type: none;
	font-weight: 700;
	margin-bottom: 1rem;
}

.text-figure ul.list li:last-child{
	margin-bottom: 0rem;
}

.text-figure ul.list li:before {
    content: '■';
    display: block;
    position: absolute;
    /*font-size:10px;*/
    left: -1.4rem;
    width: 1rem;
    color: hsla(151,100%,33%,1.00);
}


span.supText {
    font-size: 75.5%;
    vertical-align: top;
    position: relative;
    top: -0.1em;
    margin-left: 0.1rem;
 /*    font-weight: 700;*/
    color: hsla(151,95%,25%,1.00);
}

span.supText2 {
    font-size: 75.5%;
    vertical-align: top;
    position: relative;
    top: -0.1em;
    margin-left: 0.1rem;
 /*    font-weight: 700;*/
    /*color: hsla(151,95%,25%,1.00);*/
}

span.subText {
    font-size: 85%;
    vertical-align: bottom;
    position: relative;
    bottom: -0.1em;
    margin-left: 0.1rem;
	margin-right:0.2rem;
 /*    font-weight: 700;*/
   
}


.text-wrapper{
	position: relative;
	margin-bottom: 4rem;
}

.menu-title{
    font-size: 130%;
    text-align: center;
    color: hsla(151,100%,33%,1.00);
	font-weight: 700;
}


@media (max-width: 767px) {
	
	span.subText {
    font-size: 85%;
    vertical-align: bottom;
    position: relative;
    bottom: -0.3em;
    margin-left: 0.1rem;
	margin-right:0.2rem;
 /*    font-weight: 700;*/
   
}
	
	.text-figure{
    padding: 1rem;

    border-radius: 17px;

}
	
	.text-figure ul.list li{
margin-left: 1.4rem;
    line-height: 1.2rem;
	margin-bottom: 0.3rem;
}
	
	.text-wrapper{
	position: relative;
	margin-bottom: 2.5rem;
}
	
	ol.list-number li{
font-size: 85%;
	padding-left:0.25rem;
margin-bottom: 0rem;
    /*list-style-type: decimal;*/
}
	
	span.supText {
font-size: 65%;
vertical-align: top;
position: relative;
top: -0.1em;
margin-left: 0.1rem;
}
	
	.menu-title{
    font-size: 120%;
   
}
	
.text-comment{
    padding:0.75rem 0.5rem;
	font-size: 85%;
	line-height: 1.1rem;
	border-radius: 8px;
	margin-bottom: 0.7rem !important;
}

.text-comment p{
	   margin-bottom: 0.4rem;
}

.text-comment-title{
	font-size: 110%;
	margin-bottom: 0.4rem;
}	
	
}





h1{
  color: #573E80;
    margin-bottom:1.5rem;
    line-height: 2.5rem;
}

h2{
    
 line-height: 2rem;   
    margin-bottom: 2rem;
    font-weight: 700;
	text-align: center;
	 color: hsla(151,100%,33%,1.00);
}

.h2-icon-wrapper{
  width: 100%;
    height: auto;
	position:relative;
	 display: flex;
  justify-content: center;
  align-items: center;
	
}

.h2-icon{
    font-size: 1rem;
    line-height: 1rem;
    padding: 0.6rem 0.75rem;
    text-align: center;
    background-color: #573E80;
    color: #FFFFFF;
    vertical-align: middle;
    font-weight: bold;
    position: relative;
    text-align: center;
    border-radius: 5px;
	margin-bottom: 1rem;
}


h3{
    font-size: 1.2rem;
    margin-bottom: 0.7rem;
    line-height: 1.6rem;
    border-left: 3px solid hsla(151,100%,33%,1.00);
    padding-left: 0.9rem;
    font-weight: 700;
    color: hsla(151,100%,33%,1.00);
}

h3.underline{
    border-bottom: 1px dotted #573E80;
    padding-bottom: 0.1rem;  
    margin-bottom: 1rem;
}


h3.title{
 font-size: 1.2rem;
    margin-bottom: 1rem;
    line-height: 1.6rem;
    border-left: none;
    padding-left: 0rem;
    font-weight: 700;
    color: hsla(151,100%,33%,1.00);
}

h4{
  line-height: 1.5rem;
    margin-bottom: 0.5rem;
}


h4.underline{
    border-bottom: 1px dotted #573E80;
    padding-bottom: 0rem;  
    margin-bottom: 1rem;
}




@media (max-width: 767px) {
    
    p {
    margin-bottom: 0.75rem;
}
    
  h1{
  color: #573E80;
    margin-bottom:0.67rem;
    line-height: 1.9rem;
      font-size: 1.4rem;
}  
    
    h2{
  font-size: 1.2rem;
padding-left: 0.5rem;
 line-height: 1.5rem;   
    margin-bottom: 1.5rem;
    
}
    
    h3{
font-size: 1rem;
    margin-bottom:0.5rem;
    line-height: 1.5rem;
}
	
	h3.title{
 font-size: 1rem;
    margin-bottom: 0.75rem;
     line-height: 1.5rem;
  
}
    
    h4{
  line-height: 1.4rem;  
}
    
    
    
}







.lh-none{
    line-height: 0;
}




/*img*/

.fImg,
.fImg-h{
    line-height: 0;
}

.fImg img{
   width:100%; 
}

.fImg-h img{
   height:100%; 
}

.img-border{
    border: 1px solid hsla(0,0%,0%,0.4);
}






/*______________________________________layout*/





.header-margin{
    margin-top:160px;
}

@media (max-width: 767px) {
  .header-margin{
    margin-top:70px;
}  
}


.container{
    max-width: 1100px;
     width: 100%;
  margin-left: auto;
margin-right: auto;
left: 0;
right: 0;
}

  .container.underlayer{
         padding:2rem 0;
    }  

 .container.full{
    }  




@media (max-width: 1099px) {
    
   .container{
      padding-left:10px; 
       padding-right:10px; 
    }  
    
  .container.full{
	   padding-left:0px; 
       padding-right:0px; 
    }  

    
}


@media (max-width: 767px) {
    
    .container.underlayer{
         
         padding:0rem 0 2rem;
    }  
    
}



.mx-auto{
margin-left: auto;
margin-right: auto;
left: 0;
right: 0;
}





.v-middle {
  position: relative;
  top: 50%;
  transform: translate(0, -50%);
}
.v-middle img {
  backface-visibility: hidden;
  transform-style: preserve-3d;
}


.relative{
position: relative;
}

.absolute{
position: absolute;
}

.right-0{
right: 0;
}

.more-right{
       width:100%;
    position: relative;
       text-align: right !important;
}

.w100-center{
  width:100%;
    position: relative;
   text-align: center!important;  
}


/*______________________________________margin*/


.block-area{
    margin-bottom: 4rem;
}

.block-area.narrow{
    margin-bottom: 2rem;
}

.mb-0{
margin-bottom: 0rem;
}

.mb-1{
margin-bottom: 0.25rem;
}

.mb-2{
margin-bottom: 0.5rem;
}

.mb-3{
margin-bottom: 0.75rem;
}


.mb-4{
margin-bottom: 1rem;
}
.mb-8{
margin-bottom: 2rem;
}

.mb-10{
margin-bottom: 2.5rem;
}

.mb-12{
margin-bottom: 3rem;
}

.mb-14{
margin-bottom: 3.5rem;
}

.mb-16{
margin-bottom: 4rem;
}



.mt-4{
margin-top: 1rem;
}
.mt-8{
margin-top: 2rem;
}


.py-8{
padding-top: 2rem;
padding-bottom: 2rem;
}


@media (max-width: 767px) {
    
  .block-area{
    margin-bottom: 3rem;
}

.block-area.narrow{
    margin-bottom: 1.5rem;
}  
    
}

/*______________________________________flex*/

.flex{
display: flex;
}


.flex-no-wrap{
flex-wrap: nowrap;	
    }
.flex-wrap{
flex-wrap: wrap;	
    }
.flex-wrap-reverse{
flex-wrap: wrap-reverse;
    }

.justify-between{
justify-content: space-between;
}

.justify-around{
justify-content: space-around;
}


.justify-center {
  justify-content: center;
}

.justify-start{
justify-content: flex-start;
}

.item-harf{
    width:49%;
    margin-top:0.5rem;
    margin-bottom:0.5rem;
}

.item-harf.wide{
    width:48%;
}

.item-zero{
    width:100%; 
    margin-right: 0.1rem;
    margin-left: 0.1rem;
}

.item-one{
    width:80%; 
    margin-right: 0.1rem;
    margin-left: 0.1rem;
}

.item-two{
    width:48%; 
    margin-right: 0.1rem;
    margin-left: 0.1rem;
}

.item-two-one{
    width:49%; 
    margin-right: 0.1rem;
    margin-left: 0.1rem;
}

.item-three{
    width:32%;  
       margin-right: 0.1rem;
    margin-left: 0.1rem;
}

.item-four{
    width:24.5%;  
       margin-right: 0.1rem;
    margin-left: 0.1rem;
}



.card .item-40 {
    width:38%;
}

.card .item-60 {
    width:60%;
}


.type-card .item-40 {
    width:38%;
}

.type-card .item-60 {
    width:60%;
}



@media (max-width: 767px) {
    
    .type-card .item-40 {
    width:100%;
        margin-bottom: 1rem;
}

.type-card .item-60 {
   width:100%;
}
    
    
  .item-harf,
    .item-harf.wide{
    width:100%;
}  
    
.item-two,
.item-three,
 .item-four{
    width:48%;
     margin-right: 0.05rem;
    margin-left: 0.05rem;
}
    
    .item-two-one{
    width:100%; 
    margin-right: 0rem;
    margin-left: 0rem;
}
    
    .card .item-40 {
    width:100%;
}

.card .item-60 {
    width:100%;
    padding-top:1rem;
}
    
    
}




/*______________________________________button*/



 .btn-base{
     display: inline-block;
    margin: 0 5px 0 0;
}

.btn-base a:hover,
.btn-base.current a{
 
    background-color: #573E80;
    color: #fff;
   
}


.btn-base a{
    display: table-cell;
    /*width: 130px;
    height: 50px;*/
    background: #fff;
    color: #573E80;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #573E80;
    /*border-radius: 10px;*/
    line-height: 1.1rem;
    /*letter-spacing: 0.05rem;*/
    font-weight: 700;
    
	padding:0.5rem 1rem;
}




.btn-base.more a{
    width: auto;
    padding:0 2rem;
    border-radius: 30px;
    
}

.btn-base.blue a{
    width: auto;
    padding:0 2rem;
    border-radius: 30px;
       background: #573E80;
    color: #fff;
}

.btn-base.blue a:hover{
         background: #fff;
    color: #573E80; 
    border: 2px solid #573E80;
}



/*flex-full button*/

.bt-flex-box{
    width:100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;

}

.responsive-btn{
    
    display: inline-block;
   margin-bottom: 0.5rem;/*←　ここの左右のマージンを入れるとずれる */
   align-items: baseline;
  /*  width:19%;*/
   /* width:49%;*/ 
    
}

table .responsive-btn{
   margin-bottom: 0rem; 
}



    


.responsive-btn a:hover,
.responsive-btn.current a{
    background: #573E80;
    color: #fff;     
}


.responsive-btn a {
    


    letter-spacing: 0.05rem;
   /* line-height: 2.6rem;*/
    line-height: 1.2rem;
    padding: 0.5rem 0.5rem; 
   
    /*height: 2.6rem;*/
    height: auto;
    
    text-align: center;
    display: block;
    vertical-align: middle;
     background: #fff;
    color: #573E80;
        border: 2px solid #573E80;
    border-radius: 10px;
    font-weight: 600;
 /*   width:inherit;*/
}

@media (max-width: 767px) {
  .responsive-btn a {
      
      padding: 0.5rem 0.5rem; 
    }
    
}



/*______________________________________sub-header-btn*/

.sub-header-menu-area{
    max-width: 1100px;
	width:100%;
    width: 100%;
  
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
display: flex;
	/*justify-content: space-between;*/
	flex-wrap: nowrap;
/* justify-content: center;*/
}


.menuBt-pc {
	position: relative;
    display: inline-block;
  width:100%;
	/*margin: auto;*/
	background-color:#573E80;
}

.menuBt-pc a{
    border-right: 1px solid #018C48;
}

.menuBt-pc.first a{
    border-right: 1px solid #018C48;
	border-left: 1px solid #018C48;
}


.menuBt-inner {
    position: relative;
    width: 100%;
   
    height: 50px;
    padding: 0.25rem 0.5rem;
    background-color: #573E80;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    line-height: 1rem;
    transition: 0.25s;
    font-size: 0.8rem;
    font-weight: 700;
    /*	display: block;*/
	
    display: flex;
    justify-content: center;
    align-items: center;
    
}


.menuBt-inner:hover,
.menuBt-inner.current{
    background-color: #fff;
   color: #573E80;
	
}



/*layer-second*/

.layer-second {
    position: fixed;
    height: 60px;
    width: 100%;
    background-color: #037B41;
    top: 90px;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
    display: none;
    opacity: 1;
    z-index: 99;
}
.layer-second.show {
  display: flex;
top:140px;
  opacity: 1;
  animation-duration: 0.3s;
  animation-name: fade-in;
  -moz-animation-duration: 0.3s;
  -moz-animation-name: fade-in;
  -webkit-animation-duration: 0.3s;
  -webkit-animation-name: fade-in;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}
@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@-moz-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@-webkit-keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}



.layer-second .menuBt-pc a{
    border-right: 1px solid #018C48;
}

.layer-second .menuBt-pc.first a{
    border-right: 1px solid #018C48;
	border-left: 1px solid #018C48;
}


.layer-second .menuBt-inner {
    position: relative;
    width: 100%;
    height: 60px;
    padding: 0.25rem 0.5rem;
    background-color: #037B41;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    line-height: 1rem;
    transition: 0.25s;
    font-size: 0.8rem;
    font-weight: 700;
    /*	display: block;*/
	
    display: flex;
    justify-content: center;
    align-items: center;    
}


.layer-second .menuBt-inner:hover,
.layer-second .menuBt-inner.current{
    background-color: #fff;
   color: #037B41;
	
}



@media (max-width: 869px) {
 .menuBt-inner {
     font-size: 0.8rem;
    }
    
}




.category{
    font-size: 0.7rem;
    line-height: 1rem;
    padding: 0.2rem 0.6rem;
    text-align: center;
    background-color: #573E80;
    color: #FFFFFF; 
      margin: 0rem;
    vertical-align:middle;
     font-weight: bold; 
}

.category-red{
    font-size: 0.7rem;
    line-height: 1rem;
    padding: 0.2rem 0.6rem;
    text-align: center;
    background-color: #CE0404;
    color: #FFFFFF;
   margin: 0rem;
     vertical-align:middle;
     font-weight: bold; 
}

.branch{
    font-size: 0.7rem;
    line-height: 1rem;
    padding: 0.2rem 0.6rem;
    text-align: center;
    background-color: #757575;
    color: #FFFFFF;
    margin: 0rem;
    vertical-align: middle;
    font-weight: bold;
}

.new{
    font-size: 0.7rem;
    line-height: 1rem;
    padding: 0.2rem 0.6rem;
    text-align: center;
    background-color: #AB8A24;
    color: #FFFFFF;
     margin: 0rem;
    border-radius: 10px;
     font-weight: bold; 
}

.status{
    font-size: 0.7rem;
    line-height: 1rem;
    padding: 0.2rem 0.6rem;
    text-align: center;
    background-color: #fff;
    color: #AB8A24;
    margin: 0rem;
    border-radius: 10px;
    border: 1px solid #AB8A24;
    font-weight: bold;    
}

/*top bt*/


.top-bt {
  position: fixed;
  width: 50px;
      right: 2%;
    bottom: 2%;
     opacity: 0;
    /*display: none;*/
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    z-index: 100;
}

.top-bt.fadeInButton {
    opacity: 1;
   /* display: block;*/
}


@media (max-width: 767px) {
	
	.top-bt {
	 width: 40px;
      right: 2%;
    bottom: 2%;	
		
	}
	
}




.card{
    background-color: hsla(0,0%,0%,0.07);  
    padding:1rem;
}




/*form*/


.Form {
    margin-top: 80px;
    margin-left: auto;
    margin-right: auto;
    max-width: 900px;
   /* background-color: hsla(0,0%,100%,1.00);*/
}
@media screen and (max-width: 480px) {
  .Form {
    margin-top: 40px;
  }
}
.Form-Item {
  border-top: 1px solid #ddd;
  padding-top: 24px;
  padding-bottom: 24px;
  width: 100%;
  display: flex;
  align-items: center;
	padding-left: 1rem;
	padding-right: 1rem;
}
@media screen and (max-width: 480px) {
  .Form-Item {
    padding-left: 14px;
    padding-right: 14px;
    padding-top: 16px;
    padding-bottom: 16px;
    flex-wrap: wrap;
  }
}
.Form-Item:nth-child(5) {
  border-bottom: 1px solid #ddd;
}
.Form-Item-Label {
  width: 100%;
  max-width: 248px;
  letter-spacing: 0.05em;
	font-weight: 700;
 /* font-weight: bold;*/
 /* font-size: 18px;*/
}
@media screen and (max-width: 480px) {
  .Form-Item-Label {
    max-width: inherit;
    display: flex;
    align-items: center;
    font-size: 15px;
  }
}
.Form-Item-Label.isMsg {
  margin-top: 8px;
  margin-bottom: auto;
}
@media screen and (max-width: 480px) {
  .Form-Item-Label.isMsg {
    margin-top: 0;
  }
}
.Form-Item-Label-Required {
    border-radius: 6px;
    margin-right: 8px;
    padding: 2px 8px;
    /*width: 48px;*/
    display: inline-block;
    text-align: center;
    background-color: #573E80;
    color: #fff;
    font-size: 12px;
	margin-left: 1rem;
}
@media screen and (max-width: 480px) {
  .Form-Item-Label-Required {
  /*  border-radius: 4px;
    padding-top: 4px;
    padding-bottom: 4px;
    width: 32px;
    font-size: 10px;*/
  }
}
.Form-Item-Input {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-left: 40px;
  padding-left: 1em;
  padding-right: 1em;
  height: 48px;
  flex: 1;
  width: 100%;
  max-width: 410px;
  background: #fff;
  font-size: 18px;
}
@media screen and (max-width: 480px) {
  .Form-Item-Input {
    margin-left: 0;
    margin-top: 18px;
    height: 40px;
    flex: inherit;
    font-size: 15px;
  }
}
.Form-Item-Textarea {
  border: 1px solid #ddd;
  border-radius: 6px;
  margin-left: 40px;
  padding-left: 1em;
  padding-right: 1em;
  height: 216px;
  flex: 1;
  width: 100%;
  max-width: 410px;
  background: #eaedf2;
  font-size: 18px;
}
@media screen and (max-width: 480px) {
  .Form-Item-Textarea {
    margin-top: 18px;
    margin-left: 0;
    height: 200px;
    flex: inherit;
    font-size: 15px;
  }
}
.Form-Btn {
    border-radius: 6px;
    margin-top: 5rem;
    margin-left: auto;
    margin-right: auto;
    padding: 0.75rem 1rem;
    width: 280px;
    display: block;
    letter-spacing: 0.05em;
    background-color: #573E80;
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    border: 2px solid hsla(151,100%,33%,1.00);
	
	-webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}


.Form-Btn:hover {
	  background-color: #fff;
    color: #573E80;
	
}




@media screen and (max-width: 480px) {
  .Form-Btn {
    margin-top: 24px;
    padding-top: 8px;
    padding-bottom: 8px;
    width: 160px;
    font-size: 16px;
  }
}







.sf-input-text{
   border:0;
padding:10px;
font-size:1em;
color:#000;
border:solid 1px #ccc;
margin:0 0 20px;
width:250px;
}

input.sf-input-text:focus {
    /*border: 1px solid #214DA3;*/
}

.sf-field-submit input{
   border:0;
padding:10px;
font-size:1em;

color:#000;
border:solid 1px #ccc;
margin:0 0 20px;


}


.line-top{
    border-top: 1px solid hsla(0,0%,0%,0.3);
    padding-top:1rem;
}








